<?xml version="1.0"?>
<doc>
    <assembly>
        <name>JetBrains.Platform.ReSharper.Shell</name>
    </assembly>
    <members>
        <member name="T:JetBrains.Build.AllAssemblies.AssemblyKind">
            <summary>
            Kind of <see cref="T:JetBrains.Build.AllAssemblies.InstalledAssemblyXml"/>s.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.AllInstallableKinds(JetBrains.Application.Install.Installer)">
            <summary>
            Gets all the assembly kinds that are shipped with the product.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.AllInstallableKinds(JetBrains.Build.AllAssemblies.AllAssembliesXml)">
            <summary>
            Gets all the assembly kinds that are shipped with the product.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.AllKinds(JetBrains.Build.AllAssemblies.AllAssembliesXml)">
            <summary>
            Gets all the assembly kinds.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.AllPlatformReferences(JetBrains.Build.AllAssemblies.AllAssembliesXml)">
            <summary>
            Gets the list of all kinds for platform references (for all the platform names).
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.FindAssemblyFile(System.String,System.Func{JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot,JetBrains.Util.FileSystemPath})">
            <summary>
            Gets the assembly file.
            </summary>
            <param name="sAssemblyName">Assembly name, as in AllAssembliesXml.</param>
            <param name="FResolveRoot">Resolves the source root dirs in the project. Get from <see cref="T:JetBrains.Application.Install.Installer"/> or elsewhere.</param>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.GetAssembliesInConfiguration(JetBrains.Application.Install.Installer)">
            <summary>
            Returns all the assemblies that fit into the assembly configuration config and belong to the group of the given kind (product/platform binaries/references).
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.GetAssembliesInConfiguration(JetBrains.Application.IApplicationDescriptor,System.Collections.Generic.IList{JetBrains.Application.AssemblyConfiguration})">
            <summary>
            Returns all the assemblies that fit into the assembly configuration config and belong to the group of the given kind (product/platform binaries/references).
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.GetAssembliesInConfiguration(JetBrains.Application.IApplicationDescriptor,System.Collections.Generic.HashSet{System.String})">
            <summary>
            Returns all the assemblies that fit into the assembly configuration config and belong to the group of the given kind (product/platform binaries/references).
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.ResolveFolder(JetBrains.Application.Install.Installer)">
            <summary>
            Gets the folder where the assemblies of this kind reside.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.ResolveFolder(System.Func{JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot,JetBrains.Util.FileSystemPath})">
            <summary>
            Gets the folder where the assemblies of this kind reside.
            </summary>
            <param name="FResolveRoot">Resolves the source root dirs in the project. Get from <see cref="T:JetBrains.Application.Install.Installer"/> or elsewhere.</param>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>.
            </summary>
            <returns>
            true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>; otherwise, false.
            </returns>
            <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:System.Object"/>. </param><exception cref="T:System.NullReferenceException">The <paramref name="obj"/> parameter is null.</exception><filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.GetHashCode">
            <summary>
            Serves as a hash function for a particular type. 
            </summary>
            <returns>
            A hash code for the current <see cref="T:System.Object"/>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>.
            </summary>
            <returns>
            A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AssemblyKind.Equals(JetBrains.Build.AllAssemblies.AssemblyKind)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <returns>
            true if the current object is equal to the <paramref name="other"/> parameter; otherwise, false.
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.AssemblyKind.AssemblyKindConverter">
            <summary>
            Knows how to switch between <see cref="T:JetBrains.Build.AllAssemblies.AssemblyKind"/>s and <see cref="T:System.String"/>s.
            </summary>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.AssemblyKind.KindBase">
            <summary>
            Kind of <see cref="T:JetBrains.Build.AllAssemblies.InstalledAssemblyXml"/>s.
            </summary>
        </member>
        <member name="F:JetBrains.Util.UnguardedAlarm.ourRequests">
            <summary>
            Maps requests to invocation times
            </summary>
        </member>
        <member name="F:JetBrains.Util.UnguardedAlarm.myRequests">
            <summary>
            List of requests for specific alarm
            </summary>
        </member>
        <member name="F:JetBrains.Util.UnguardedAlarm.ourTimer">
            <summary>
            The alarms timer
            </summary>
        </member>
        <member name="T:JetBrains.Application.ApplicationDescriptor">
            <summary>
            Describes the product.
            The instances are spawned by the shell and populated with the assembly configuration and product edition parameters.
            </summary>
        </member>
        <member name="T:JetBrains.Application.IApplicationDescriptor">
            <summary>
            <para>For a JetBrains .NET Platform based product, describes the static <see cref="T:JetBrains.Application.Shell"/> properties for that product.</para>
            Being static, an Application Descriptor can be created without a Shell. It's used for getting static product info without a running product, eg for packing the assemblies for the setup package, or harvesting entities like registration attributes from all of the product assemblies.
            The AD can tell product properties, like name, version, build date, and URIs, and the list of product assemblies for various product configurations. A configuration is defined elsewhere, when starting the Shell over this AD, or specified for the setup package builder to tell which DLLs should go into setup.
            To start a Shell, create an AD of the specific type, give it enough context as needed, and call its overload of <c>StartShell</c>. A Shell cannot be created directly. A newly-created Shell remembers its underlying AD and uses it to get the list of the assemblies to run for the product.
            Even though you can create an AD directly, things Visual Studio integration package and setup package builder use autodiscovery to locate the AD because they're not product-specific and cannot know the exact AD class type. An <see cref="T:JetBrains.Application.ApplicationDescriptorAttribute"/> defnies the Application Descriptor to be created.
            <para>Note: <see cref="T:JetBrains.Application.IApplicationDescriptor"/> is all-static and the same throughout all the product runs, <see cref="T:JetBrains.Application.IShellStarter"/> is bound to the single product run (but multiple shell runs, if needed), so it binds to cmdline and VS version, and the <see cref="T:JetBrains.Application.Shell"/> is for a single Shell run (in Visual Studio, our Shell can be started and stopped multiple times within the same VS run), and its <see cref="P:JetBrains.Application.Shell.AssemblyConfigurations"/> is unique per run.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesResourceAssembly">
            <summary>
            Gets the assembly that contains the <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesXml"/> data in the <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesResourceName"/> resource.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesResourceName">
            <summary>
            Gets the name of the resource in <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesResourceAssembly"/> that contains the serialized <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesXml"/> data.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesXml">
            <summary>
            The “All Assemblies” XML file, deserialized.
            Contains the list of product assemblies to be loaded, as well as the configurations filters.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.Bag">
            <summary>
            A property bag with arbitrary additional properties that bear information about the product.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.BuiltOn">
            <summary>
            Gets the date and time when the current product was built.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.BuyURL">
            <summary>
            Gets the URL that takes to the “Buy Product” page.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.DoCheckLicenseReuseOverNetwork">
            <summary>
            Determines whether the product should check for multiple instances running simultaneousely over the network.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.EvaluationURL">
            <summary>
            Gets the URL that takes to the page that provides an eval license.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.LicenseSupport">
            <summary>
            Gets the licensing implementation.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.ProductAboutBoxImage">
            <summary>
            AboutBox for the product shows this image. Recommended minimum width: <c>200h</c>.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.ProductDialogHeaderImage">
            <summary>
            All license-related dialogs shows this image to ease disambiguation between products. Recommended size: <c>521x54</c>.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.ProductBirthDate">
            <summary>
            The birth date of the product. Used for the lower copyright year and so on.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.ProductFullName">
            <summary>
            Gets the product full name, which is typically the <see cref="P:JetBrains.Application.IApplicationDescriptor.ProductName"/> plus the short version number.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.ProductIcon">
            <summary>
            Gets the product icon.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.ProductName">
            <summary>
            Gets the bare product name in the shortest form (no company, no version).
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.ProductURL">
            <summary>
            Gets the URL that takes to the Product page.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.ProductVersion">
            <summary>
            Gets the product full version.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IApplicationDescriptor.UpdatesFilterUri">
            <summary>
            Gets the URI to request for the product updates, if available. //TODO:link to updates format info
            </summary>
        </member>
        <member name="F:JetBrains.Application.ApplicationDescriptor.myAllAssembliesXml">
            <summary>
            Caches the <see cref="T:JetBrains.Build.AllAssemblies.AllAssembliesXml"/> file, which should be loaded only once.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ApplicationDescriptor.myBag">
            <summary>
            <see cref="P:JetBrains.Application.ApplicationDescriptor.Bag"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ApplicationDescriptor.myBuiltOn">
            <summary>
            Lazy-init-caches the <see cref="P:JetBrains.Application.ApplicationDescriptor.BuiltOn"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ApplicationDescriptor.myProductVersion">
            <summary>
            Lazy-init-caches the <see cref="P:JetBrains.Application.ApplicationDescriptor.ProductVersion"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ApplicationDescriptor.CreateInstance(JetBrains.Application.ApplicationDescriptorAttribute)">
            <summary>
            Creates an <see cref="T:JetBrains.Application.IApplicationDescriptor"/> instance based on the construction data that describes the class and ctor arguments.
            Throws on errors.
            </summary>
            <param name="attribute">The declaring attribute that has spawned this descriptor.</param>
        </member>
        <member name="M:JetBrains.Application.ApplicationDescriptor.CreateInstance(System.Collections.Generic.IEnumerable{System.Reflection.Assembly})">
            <summary>
            Creates an <see cref="T:JetBrains.Application.IApplicationDescriptor"/> instance based on the attributes identifying the descriptor (looked up in <paramref name="assemblies"/>) and spawning it with universal configurations/editions.
            Such a descriptor is not suitable for runtime use, but suits for picking the static properties.
            The instance is NOT cached.
            Throws on errors.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ApplicationDescriptor.FindAttribute(System.Collections.Generic.IEnumerable{System.Reflection.Assembly})">
            <summary>
            Looks up a <see cref="T:JetBrains.Application.ApplicationDescriptorAttribute"/> that instructs on how to spawn an <see cref="T:JetBrains.Application.IApplicationDescriptor"/> in the specified assemblies.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.AllAssembliesResourceAssembly">
            <summary>
            Gets the assembly that contains the <see cref="P:JetBrains.Application.ApplicationDescriptor.AllAssembliesXml"/> data.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.AllAssembliesResourceName">
            <summary>
            Gets the name of the resource in <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesResourceAssembly"/> that contains the serialized <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesXml"/> data.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.AllAssembliesXml">
            <summary>
            The “All Assemblies” XML file, deserialized.
            Contains the list of product assemblies to be loaded, as well as the configurations filters.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.Bag">
            <summary>
            A property bag with arbitrary additional properties that bear information about the product.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.BuiltOn">
            <summary>
            Gets the date and time when the current product was built.
            By default, returns the assembly file modification time of the configuration assembly.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.BuyURL">
            <summary>
            Gets the URL that takes to the “Buy Product” page.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.DoCheckLicenseReuseOverNetwork">
            <summary>
            Determines whether the product should check for multiple instances running simultaneousely over the network.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.EvaluationURL">
            <summary>
            Gets the URL that takes to the page that provides an eval license.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.LicenseSupport">
            <summary>
            Gets the licensing implementation.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.ProductAboutBoxImage">
            <summary>
            AboutBox for the product shows this image. Recommended minimum width: <c>200h</c>.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.ProductDialogHeaderImage">
            <summary>
            All license-related dialogs shows this image to ease disambiguation between products. Recommended minimum width: <c>200h</c>.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.ProductBirthDate">
            <summary>
            The birth date of the product. Used for the lower copyright year and so on.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.ProductFullName">
            <summary>
            Gets the product full name, which is typically the <see cref="P:JetBrains.Application.IApplicationDescriptor.ProductName"/> plus the short version number.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.ProductIcon">
            <summary>
            Gets the product icon.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.ProductName">
            <summary>
            Gets the bare product name in the shortest form (no company, no version).
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.ProductVersion">
            <summary>
            Gets the product full version.
            By default, returns the assembly version of the configuration assembly.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptor.UpdatesFilterUri">
            <summary>
            Gets the URI to request for the product updates, if available. //TODO:link to updates format info
            </summary>
        </member>
        <member name="T:JetBrains.Application.ApplicationDescriptorLite">
            <summary>
            Implements most of the <see cref="T:JetBrains.Application.ApplicationDescriptor"/> members and leaves only the most crucial ones for the author.
            Not recommended for use in full-blown products.
            </summary>
        </member>
        <member name="T:JetBrains.Application.IShellStarter">
            <summary>
            Helps to start a new <see cref="T:JetBrains.Application.Shell"/> based on the <see cref="T:JetBrains.Application.IApplicationDescriptor">Application Descriptor</see> parameters.
            Enables the <see cref="T:JetBrains.Application.Shell"/> to restart itself without a need to specify any additional parameters.
            <para>Note: <see cref="T:JetBrains.Application.IApplicationDescriptor"/> is all-static and the same throughout all the product runs, <see cref="T:JetBrains.Application.IShellStarter"/> is bound to the single product run (but multiple shell runs, if needed), so it binds to cmdline and VS version, and the <see cref="T:JetBrains.Application.Shell"/> is for a single Shell run, and its <see cref="P:JetBrains.Application.Shell.AssemblyConfigurations"/> is unique per run.</para>
            </summary>
        </member>
        <member name="M:JetBrains.Application.IShellStarter.GetProductRegistryKey">
            <summary>
            Gets the path to the Registry location where the product Registry is stored.
            For standalone products, that could be just the Application Registry path.
            For Visual Studio add-ins, this could be the VS-version-specific location.
            Note that as Shell Starter is created before Shell, it should not use <see cref="P:JetBrains.Application.Shell.Instance"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.IShellStarter.StartShell">
            <summary>
            <para>Starts the application shell based on this instance.</para>
            <para>The <see cref="P:JetBrains.Application.Shell.HasInstance"/> is expected to be <c>True</c> after this method returns. It's an error to call this method if already <see cref="P:JetBrains.Application.Shell.HasInstance"/> is <c>True</c>.</para>
            <para>See notes on <see cref="T:JetBrains.Application.IApplicationDescriptor"/> for info on how Shells and Application Descriptors work together, and how this method should be implemented.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.IShellStarter.ApplicationDescriptor">
            <summary>
            Gets the <see cref="T:JetBrains.Application.IApplicationDescriptor">Application Descriptor</see> for the application and the <see cref="T:JetBrains.Application.Shell"/> that will be created.
            </summary>
        </member>
        <member name="P:JetBrains.Application.IShellStarter.CommandLine">
            <summary>
            Gets the application command line.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ApplicationDescriptorLite.#ctor(System.String,System.Reflection.Assembly,System.String,System.Func{JetBrains.Application.ApplicationDescriptorLite,JetBrains.Application.Shell})">
            <summary>
            Inits the descriptor, assigning values to the minimum of the parameters.
            </summary>
            <param name="sProductName">Name for the Shell product.</param>
            <param name="allAssembliesResourceAssembly">The assembly that contains the <paramref name="allAssembliesResourceName"/> AllAssembliesXml data.</param>
            <param name="allAssembliesResourceName">The resource with the AllAssembliesXml assemblies list data.</param>
            <param name="FStartShell">Starts the Application Shell for this descriptor.</param>
        </member>
        <member name="M:JetBrains.Application.ApplicationDescriptorLite.#ctor(System.String,System.Reflection.Assembly,System.String,System.Func{JetBrains.Application.ApplicationDescriptorLite,JetBrains.Application.Shell},JetBrains.Application.ICommandLine)">
            <summary>
            Inits the descriptor, assigning values to the minimum of the parameters.
            </summary>
            <param name="sProductName">Name for the Shell product.</param>
            <param name="allAssembliesResourceAssembly">The assembly that contains the <paramref name="allAssembliesResourceName"/> AllAssembliesXml data.</param>
            <param name="allAssembliesResourceName">The resource with the AllAssembliesXml assemblies list data.</param>
            <param name="FStartShell">Starts the Application Shell for this descriptor.</param>
            <param name="cmdline">The command line arguments for the application.</param>
        </member>
        <member name="M:JetBrains.Application.ApplicationDescriptorLite.StartShell">
            <summary>
            <para>Starts the application shell based on this application descriptor.</para>
            <para>The <see cref="P:JetBrains.Application.Shell.HasInstance"/> is expected to be <c>True</c> after this method returns. It's an error to call this method if already <see cref="P:JetBrains.Application.Shell.HasInstance"/> is <c>True</c>.</para>
            <para>See notes on <see cref="T:JetBrains.Application.IApplicationDescriptor"/> for info on how Shells and Application Descriptors work together, and how this method should be implemented.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.AllAssembliesResourceAssembly">
            <summary>
            Gets the assembly that contains the <see cref="P:JetBrains.Application.ApplicationDescriptor.AllAssembliesXml"/> data.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.AllAssembliesResourceName">
            <summary>
            Gets the name of the resource in <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesResourceAssembly"/> that contains the serialized <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesXml"/> data.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.BuyURL">
            <summary>
            Gets the URL that takes to the “Buy Product” page.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.DoCheckLicenseReuseOverNetwork">
            <summary>
            Determines whether the product should check for multiple instances running simultaneousely over the network.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.EvaluationURL">
            <summary>
            Gets the URL that takes to the page that provides an eval license.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.LicenseSupport">
            <summary>
            Gets the licensing implementation.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.ProductBirthDate">
            <summary>
            The birth date of the product. Used for the lower copyright year and so on.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.ProductFullName">
            <summary>
            Gets the product full name, which is typically the <see cref="P:JetBrains.Application.IApplicationDescriptor.ProductName"/> plus the short version number.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.ProductIcon">
            <summary>
            Gets the product icon.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.ProductName">
            <summary>
            Gets the bare product name in the shortest form (no company, no version).
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.CommandLine">
            <summary>
            Gets the application command line.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorLite.JetBrains#Application#IShellStarter#ApplicationDescriptor">
            <summary>
            Gets the <see cref="T:JetBrains.Application.IApplicationDescriptor">Application Descriptor</see> for the application and the <see cref="T:JetBrains.Application.Shell"/> that will be created.
            </summary>
        </member>
        <member name="T:JetBrains.Application.AssemblyConfiguration">
            <summary>
            Validates the list of assembly configurations.
            </summary>
        </member>
        <member name="T:JetBrains.Application.KnownValue">
            <summary>
            Describes a single known value form the <see cref="T:JetBrains.Build.AllAssemblies.AllAssembliesXml"/> file.
            The string value of the item is checked to be valid against the predefined values list.
            </summary>
        </member>
        <member name="F:JetBrains.Application.KnownValue.myAllAssembliesXml">
            <summary>
            <see cref="P:JetBrains.Application.KnownValue.AllAssembliesXml"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.KnownValue.myValue">
            <summary>
            <see cref="P:JetBrains.Application.KnownValue.Value"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownValue.#ctor(System.String,JetBrains.Build.AllAssemblies.AllAssembliesXml,System.Boolean)">
            <summary>
            Validates the string value and wraps it into the configuration.
            </summary>
            <param name="value"><see cref="P:JetBrains.Application.KnownValue.Value"/>.</param>
            <param name="allassembliesxml"><see cref="P:JetBrains.Application.KnownValue.AllAssembliesXml"/>.</param>
            <param name="validate">For internal needs. Allows to bypass the slow validation when building a list of configs from a known list.</param>
        </member>
        <member name="M:JetBrains.Application.KnownValue.AssertValidValue(System.String)">
            <summary>
            Checks whether the <paramref name="valuename"/> is indeed known to the all-assemblies-xml file.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownValue.GetKnownValuesCollection">
            <summary>
            Gets the collection of the known values, for validation.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownValue.ToString">
            <summary>
            Returns a <see cref="T:System.String"></see> that represents the current <see cref="T:System.Object"></see>.
            </summary>
            
            <returns>
            A <see cref="T:System.String"></see> that represents the current <see cref="T:System.Object"></see>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.KnownValue.Equals(System.String)">
            <summary>
             Checks whether this value is equal to another value whose string value is passed in as a parameter.
             You should use this method rather than comparing the <see cref="P:JetBrains.Application.KnownValue.Value"/> to a string, because this method would validate the <paramref name="other"/> against the known values list.
            </summary>
            <returns>
            true if the current object is equal to the other parameter; otherwise, false.
            </returns>
            <param name="other">String value to compare with, is validated against the known values list.</param>
        </member>
        <member name="P:JetBrains.Application.KnownValue.UniversalValue">
            <summary>
            Gets the string value of the universal known value.
            </summary>
        </member>
        <member name="P:JetBrains.Application.KnownValue.AllAssembliesXml">
            <summary>
            Gets the <see cref="T:JetBrains.Build.AllAssemblies.AllAssembliesXml"/> file that defines and owns the configuration.
            The configuration validness is checked against the file.
            </summary>
        </member>
        <member name="P:JetBrains.Application.KnownValue.IsUniversal">
            <summary>
            Gets whether this configuration is the Universal configuration, ie includes all of the assemblies regardless of their configurations.
            </summary>
        </member>
        <member name="P:JetBrains.Application.KnownValue.IsUniversalAllowed">
            <summary>
            Gets whether the universal value (string value <see cref="P:JetBrains.Application.KnownValue.UniversalValue"/>) is available on this set of items.
            </summary>
        </member>
        <member name="P:JetBrains.Application.KnownValue.Value">
            <summary>
            Gets the string value of the configuration, as written in the <see cref="T:JetBrains.Build.AllAssemblies.AllAssembliesXml"/> file.
            </summary>
        </member>
        <member name="M:JetBrains.Application.AssemblyConfiguration.GetKnownValuesCollection">
            <summary>
            Gets the collection of the known values, for validation.
            </summary>
            <returns></returns>
        </member>
        <member name="P:JetBrains.Application.AssemblyConfiguration.IsUniversalAllowed">
            <summary>
            Gets whether the universal value (string value <see cref="P:JetBrains.Application.KnownValue.UniversalValue"/>) is available on this set of items.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ApplicationDescriptorAttribute">
            <summary>
            Defines a product by the means of the type that should be instantiated so that to serve as its <see cref="T:JetBrains.Application.IApplicationDescriptor"/>.
            To provide for loading more than one product into the appdomain, the search for attributes is constrained to the startup assembly. In case of a Visual Studio Add-In / Package, the startup assembly is that one containing the Add-In / Package.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ApplicationDescriptorAttribute.ApplicationDescriptorType">
            <summary>
            Gets the class that should be instantiated as the application descriptor, see <see cref="T:JetBrains.Application.IApplicationDescriptor"/>.
            The class must have a public “<c>.ctor()</c>” or “<c>.ctor(<see cref="T:JetBrains.Application.ApplicationDescriptorAttribute"/>)</c>”.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ProductEdition">
            <summary>
            Validates the list of product editions.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ProductEdition.RegistryLoadProductEdition(System.String,JetBrains.Build.AllAssemblies.AllAssembliesXml)">
            <summary>
            Loads the cached product edition from the Registry.
            LicenseSupport knows which one to use, but we do not have License Support until we start up a Shell with some Product Edition, that's why we'd like to cache it from the previous run.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ProductEdition.RegistrySaveProductEdition(System.String)">
            <summary>
            Saves the cached product edition to the Registry.
            LicenseSupport knows which one to use, but we do not have License Support until we start up a Shell with some Product Edition, that's why we'd like to cache it from the previous run.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ProductEdition.GetKnownValuesCollection">
            <summary>
            Gets the collection of the known values, for validation.
            </summary>
            <returns></returns>
        </member>
        <member name="P:JetBrains.Application.ProductEdition.Description">
            <summary>
            Freehand description for the user interface.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ProductEdition.DisplayName">
            <summary>
            A user-friendly name for this edition. Should not include the “Edition” suffix. Used for display in user interfaces.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ProductEdition.IsUniversalAllowed">
            <summary>
            Gets whether the universal value (string value <see cref="P:JetBrains.Application.KnownValue.UniversalValue"/>) is available on this set of items.
            Note that a universal product edition can be encountered in two cases:
            (1) On a product that does not support product editions (<see cref="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.DefaultProductEdition"/> is also Universal in this case), in which case it's the only allowed edition.
            (2) When there's no cached product edition for the installation, in which case you're not allowed to use this value and must change it to <see cref="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.DefaultProductEdition"/> ASAP.
            </summary>
        </member>
        <member name="T:JetBrains.Application.AssemblyManager">
            <summary>
            Controls execution of the assembly-load-time-handlers in various assemblies of the product.
            </summary>
        </member>
        <member name="F:JetBrains.Application.AssemblyManager.myAssemblies">
            <summary>
            Assemblies for which the assembly loaders have already been executed.
            </summary>
        </member>
        <member name="F:JetBrains.Application.AssemblyManager.myShellbase">
            <summary>
            The Shell that knows the AllAssemblies list, and such.
            </summary>
        </member>
        <member name="M:JetBrains.Application.AssemblyManager.LoadAssemblies(System.String,System.Reflection.Assembly[])">
            <summary>
            Creates the descriptors for the already-loaded assemblies (eg plugins') and executes load handlers for 'em.
            </summary>
        </member>
        <member name="M:JetBrains.Application.AssemblyManager.LoadAssemblies(System.Collections.Generic.ICollection{JetBrains.Application.AssemblyManager.AssemblyDescriptor})">
            <summary>
            Executes the load handlers for the given assemblies. Ensures none are processed twice.
            </summary>
        </member>
        <member name="M:JetBrains.Application.AssemblyManager.BuildAssemblyIndices(System.String,System.Collections.Generic.IEnumerable{JetBrains.Application.AssemblyManager.AssemblyDescriptor},JetBrains.Application.LoadingAssemblyResolver)">
            <summary>
            Builds a map of assembly attributes on types to the types they're defined on.
            </summary>
        </member>
        <member name="M:JetBrains.Application.AssemblyManager.EnsureReferences(System.Reflection.Assembly)">
            <summary>
            Checks that no references are missing, early-detects any other metadata problems.
            </summary>
        </member>
        <member name="M:JetBrains.Application.AssemblyManager.FetchAllAssembliesXml">
            <summary>
            Loads each assembly from the <see cref="T:JetBrains.Build.AllAssemblies.AllAssembliesXml"/> file (filtered by config).
            Looks up types with attributes, builds an index of those. Doesn't save the index, just returns its data in the descriptors.
            </summary>
        </member>
        <member name="P:JetBrains.Application.AssemblyManager.TypeLoadingHandlers">
            <summary>
            The collection of type loading handlers that you can populate with your own ones.
            They will receive notifications about types in the existing and newly-loaded assemblies that fit the <see cref="P:JetBrains.Application.ITypeLoadingHandler.AttributeTypes"/> criterion.
            </summary>
        </member>
        <member name="T:JetBrains.Application.AssemblyManager.AssemblyDescriptor">
            <summary>
            References an assembly as well as some additional data about it.
            Maintains a hot-list of types having specific attributes.
            </summary>
        </member>
        <member name="F:JetBrains.Application.AssemblyManager.AssemblyDescriptor.myAssemblyXml">
            <summary>
            Stores the assembly data, as fetched from the <c>AllAssemblies.xml</c> file.
            </summary>
        </member>
        <member name="P:JetBrains.Application.AssemblyManager.AssemblyDescriptor.AssemblyName">
            <summary>
            Gets the name of the assembly, as listed in the <c>AllAssemblies.xml</c>.
            </summary>
        </member>
        <member name="P:JetBrains.Application.AssemblyManager.AssemblyDescriptor.ExcludedTypes">
            <summary>
            Gets the list of the types that should not be processed when loading the assembly.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ChangeEventArgs">
            <summary>
            Represents arguments of change event
            </summary>
        </member>
        <member name="M:JetBrains.Application.ChangeManager.ExecuteAfterChange(System.Action)">
            <summary>
            Executes the specified action after the current change has finished or immediately if there
            is no change currently in progress.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ChangeManager.RegisterChangeProvider(JetBrains.Application.IChangeProvider)">
            <summary>
            Registers change provider in the dispatching scheme.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ChangeManager.PushRegisterChangeProvider(JetBrains.Application.IChangeProvider)">
            <summary>
            Registers/unregisters change provider in the dispatching scheme.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ChangeManager.UnregisterChangeProvider(JetBrains.Application.IChangeProvider)">
            <summary>
            Unregisters change provider from the dispatching scheme.
            </summary>
            <remarks>Remove all dependencies in which the provider participates</remarks>
        </member>
        <member name="M:JetBrains.Application.ChangeManager.OnProviderChanged(JetBrains.Application.IChangeProvider,System.Object,JetBrains.Application.Progress.ITaskExecutor)">
            <summary>
            Initiates the event dispatching process using the specified provider as a starting point.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ChangeManager.AddDependency(JetBrains.Application.IChangeProvider,JetBrains.Application.IChangeProvider)">
            <summary>
            Adds dependency between two providers.
            </summary>
            <remarks>Both providers must have already been registered</remarks>
        </member>
        <member name="M:JetBrains.Application.ChangeManager.RemoveDependency(JetBrains.Application.IChangeProvider,JetBrains.Application.IChangeProvider)">
            <summary>
            Removes dependency between two providers.
            </summary>
            <remarks>Both providers must have already been registered</remarks>
        </member>
        <member name="M:JetBrains.Application.ChangeManager.Dump(System.IO.TextWriter)">
            <summary>
            Dumps the internal structure into the specified writer.
            </summary>
        </member>
        <member name="E:JetBrains.Application.ChangeManager.Changed">
            <summary>
            The event about changes in the system.
            </summary>
        </member>
        <member name="T:JetBrains.Application.IChangeUnit">
            <summary>
            Represents an abstract change unit.
            </summary>
        </member>
        <member name="T:JetBrains.ProjectModel.Pattern">
            <summary>
            Defines set of file names that match the specified regular expression
            </summary>
        </member>
        <member name="P:JetBrains.Application.ICommandLine.Keys">
            <summary>
            Array of defined keys: “/Key[=Value]”.
            </summary> 
        </member>
        <member name="P:JetBrains.Application.ICommandLine.Parameters">
            <summary>
            Strings that do not start with “/” and belong to the previous string with a “/”.
            </summary> 
        </member>
        <member name="P:JetBrains.Application.CommandLine.Keys">
            <summary>
            Array of defined keys: /Key[=Value]
            </summary> 
        </member>
        <member name="P:JetBrains.Application.CommandLine.Parameters">
            <summary>
            Strings, that does not start with '/'.
            </summary> 
        </member>
        <member name="T:JetBrains.Application.CommandLineSwitchAttribute">
            <summary>
            Defines a command-line switch that will be known to the shell and registered with the hosting app, as needed.
            </summary>
        </member>
        <member name="M:JetBrains.Application.CommandLineSwitchAttribute.#ctor(System.String,System.Int32)">
            <summary>
            Defines a command-line switch that will be known to the shell and registered with the hosting app, as needed.
            </summary>
            <param name="name">The name of the command line switch, without the prefix.</param>
            <param name="parameterscount">The number of parameters of the command line switch.</param>
        </member>
        <member name="P:JetBrains.Application.CommandLineSwitchAttribute.Name">
            <summary>
            Gets the name of the command line switch, without the prefix.
            </summary>
        </member>
        <member name="P:JetBrains.Application.CommandLineSwitchAttribute.ParametersCount">
            <summary>
            Gets the number of parameters of the command line switch.
            </summary>
        </member>
        <member name="T:JetBrains.Application.GlobalSettings">
            <summary>
            The global platform shell-level settings.
            </summary>
            <remarks>For common settings not owned by a component, provides a single place to define the string name of the setting and the default value, which guarantees they agree in all usages across the solution.</remarks>
        </member>
        <member name="P:JetBrains.Application.GlobalSettings.SubmitActivityLogs">
            <summary>
            Are we allowed to submit user activity logs for internal processing
            </summary>
        </member>
        <member name="T:JetBrains.Application.GlobalSettingsTable">
            <summary>
            Contains global settings of objects that do not have components to store settings in
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.IXmlExternalizableComponent">
            <summary>
            A component that supports XML serialization of its settings.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.IComponent">
            <summary>
            Base component interface.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.IComponent.Init">
            <summary>
            <para>Initializes the component. Called by the component container after the component is created.</para>
            <para><see cref="M:System.IDisposable.Dispose"/> is the pairing method that's guaranteed to be called by the component container to tear down your component.</para>
            <para>You must not access other components before your <see cref="M:JetBrains.ComponentModel.IComponent.Init"/> method is called.</para>
            <para>All of the components that you access from <see cref="M:JetBrains.ComponentModel.IComponent.Init"/> are guaranteed to exist when your <see cref="M:System.IDisposable.Dispose"/> is called. Any other component might be missing by that time, and trying to get it will throw an exception.</para>
            </summary>
        </member>
        <member name="P:JetBrains.ComponentModel.IXmlExternalizableComponent.Scope">
            <summary>
            Gets the scope that defines which store the data goes into.
            Must not be <c>Null</c>.
            </summary>
        </member>
        <member name="P:JetBrains.ComponentModel.IXmlExternalizableComponent.TagName">
            <summary>
            Gets the Tag Name of the XML Element in the settings file.
            </summary>
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.BoolProperties">
            <summary>
            Gets the boolean properties.
            </summary>
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.IntProperties">
            <summary>
            Gets the integer properties.
            </summary>
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.StringProperties">
            <summary>
            Gets the string properties.
            </summary>
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.Scope">
            <summary>
            Scope that defines which store the data goes into.
            Must not be <c>0</c>.
            </summary>
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.JetBrains#ComponentModel#IXmlExternalizableComponent#Scope">
            <summary>
            Gets the scope that defines which store the data goes into.
            Must not be <c>Null</c>.
            </summary>
        </member>
        <member name="T:JetBrains.Application.SettingsTableBase.PropertiesCollection`1">
            <summary>
            Represent the properties collection.
            </summary>
        </member>
        <member name="M:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.Add(JetBrains.DataFlow.IProperty{`0})">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"></see>.
            </summary>
            
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"></see>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only.</exception>
        </member>
        <member name="M:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.Clear">
            <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"></see>.
            </summary>
            
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only. </exception>
        </member>
        <member name="M:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.Contains(JetBrains.DataFlow.IProperty{`0})">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"></see> contains a specific value.
            </summary>
            
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"></see>; otherwise, false.
            </returns>
            
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"></see>.</param>
        </member>
        <member name="M:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.CopyTo(JetBrains.DataFlow.IProperty{`0}[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"></see> to an <see cref="T:System.Array"></see>, starting at a particular <see cref="T:System.Array"></see> index.
            </summary>
            
            <param name="array">The one-dimensional <see cref="T:System.Array"></see> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"></see>. The <see cref="T:System.Array"></see> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException">array is null.</exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"></see> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
        </member>
        <member name="M:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
            
            <returns>
            An <see cref="T:System.Collections.IEnumerator"></see> object that can be used to iterate through the collection.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.Remove(JetBrains.DataFlow.IProperty{`0})">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"></see>.
            </summary>
            
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"></see>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"></see>.
            </returns>
            
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"></see>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only.</exception>
        </member>
        <member name="M:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.System#Collections#Generic#IEnumerable{JetBrains#DataFlow#IProperty{TValue}}#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
            </returns>
            <filterpriority>1</filterpriority>
        </member>
        <member name="M:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{System#String@JetBrains#DataFlow#IProperty{TValue}}}#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
            </returns>
            <filterpriority>1</filterpriority>
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.Item(System.String)">
            <summary>
            Gets a property by its name.
            Creates a new one if missing.
            </summary>
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.Item(System.String,`0)">
            <summary>
            Gets a property by its name.
            Creates a new one if missing.
            The second parameter is the default value for the case the property does not yet exist.
            </summary>
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"></see>.
            </summary>
            
            <returns>
            The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"></see>.
            </returns>
            
        </member>
        <member name="P:JetBrains.Application.SettingsTableBase.PropertiesCollection`1.IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only.
            </summary>
            
            <returns>
            true if the <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only; otherwise, false.
            </returns>
            
        </member>
        <member name="T:JetBrains.Application.IShellComponent">
            <summary>
            Base interface for all global components
            </summary>
        </member>
        <member name="T:JetBrains.Application.WorkspaceSettingsTable">
            <summary>
            Contains global settings of objects that do not have components to store settings in
            </summary>
        </member>
        <member name="M:JetBrains.Application.Changes.ChangeManagerImpl.PushRegisterChangeProvider(JetBrains.Application.IChangeProvider)">
            <summary>
            Registers/unregisters change provider in the dispatching scheme.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.IInstallAttributes">
            <summary>
            A class marked with <see cref="T:JetBrains.Application.Install.InstallAttributesAttribute"/> must implement this interface in order to be called for processing each of the assembly attributes it handles.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.IInstallAttributes.InstallInstance(JetBrains.Application.Install.Installer,System.Object)">
            <summary>
            Called for each of the attributes of the requested type encountered in the known assemblies.
            </summary>
            <param name="installer">The installer object that provides the installation data.</param>
            <param name="attributeInstance">Instance of the attribute to process.</param>
            <returns>The list of the Registry entries to write, or <c>Null</c> if none.</returns>
        </member>
        <member name="M:JetBrains.Application.Install.IInstallAttributes.InstallStatic(JetBrains.Application.Install.Installer)">
            <summary>
            Called once on the object during the registration process.
            </summary>
            <param name="installer">The installer object that provides the installation data.</param>
            <returns>The list of the Registry entries to write, or <c>Null</c> if none.</returns>
        </member>
        <member name="T:JetBrains.Application.Install.InstallAttributesAttribute">
            <summary>
            An attribute to mark the classes that process the installation data written in the form of assembly attributes of type <see cref="P:JetBrains.Application.Install.InstallAttributesAttribute.AttributeToInstall"/> during registration and unregistration.
            Such classes will also be called once to perform their own attribute-independent installation.
            The class must implement the <see cref="T:JetBrains.Application.Install.IInstallAttributes"/> interface.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallAttributesAttribute.#ctor(JetBrains.Application.Install.InstallerVsVersionAffinity)">
            <summary>
            Creates the attribute.
            The installer is not attached to any particular attributes, but only executes the one-time action.
            </summary>
            <param name="vsversionaffinity">Specifies the affinity of this installer to the VS version, see enum member summaries for details.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallAttributesAttribute.#ctor(System.Type,JetBrains.Application.Install.InstallerVsVersionAffinity)">
            <summary>
            Creates the attribute.
            </summary>
            <param name="typeAttributeToInstall">Type of the attribute for which the class marked by <see cref="T:JetBrains.Application.Install.InstallAttributesAttribute"/> should be invoked to process the installation. May be <c>Null</c> if the class wants to execute its own installation only.</param>
            <param name="vsversionaffinity">Specifies the affinity of this installer to the VS version, see enum member summaries for details.</param>
        </member>
        <member name="P:JetBrains.Application.Install.InstallAttributesAttribute.AttributeToInstall">
            <summary>
            Gets the type of the attribute for which the class marked by <see cref="T:JetBrains.Application.Install.InstallAttributesAttribute"/> should be invoked to process the installation.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallAttributesAttribute.VsVersionAffinity">
            <summary>
            Specifies whether this installation is interested in the VS version, and how.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.Installer">
            <summary>
            Invokes installation/uninstallation related services.
            This class should not be made static (and, conscequently, public interface methods on it), so that it were created and disposed accordingly, with its underlying <see cref="T:JetBrains.Metadata.Utils.AssemblyResolver"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.Installer.myMapAttributeToInstallers">
            <summary>
            Maps the attributes storing the installation data to the objects that process their registration and unregistration.
            Don't use, see <see cref="P:JetBrains.Application.Install.Installer.MapAttributeToInstallers"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.Installer.myMapInstallerTypeToInstance">
            <summary>
            Maps the attribute-installer types to the created instances of their objects.
            Don't use, see <see cref="P:JetBrains.Application.Install.Installer.MapInstallerTypeToInstance"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.Installer.myApplicationDescriptor">
            <summary>
            The product descriptor that provides the essential data on the product being installed or uninstalled.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.Installer.myMetadataLoader">
            <summary>
            Loads metadata without loading the assembly. Needed mostly for looking for the installer attributes, because doing so via reflection would cause looking up the referenced assemblies, which could be missing on the build site (eg VS 10 when building with netfx 3.5).
            Lifetime: Installer.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.#ctor(System.String)">
            <summary>
            A constructor for spawning the installer on an application descriptor that is defined in an attribute.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.Installer.AssemblyConfigurations">
            <summary>
            Gets the assembly configurations in which the product is running, which defines the set of assemblies from <see cref="T:JetBrains.Build.AllAssemblies.AllAssembliesXml"/> to load.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.Installer.AssemblyConfigurationsString">
            <summary>
            The assembly configurations string value, as passed to the ctor.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.Installer.BeforeInstallationDataHarvestComplete">
            <summary>
            Fired after the <see cref="T:JetBrains.Application.Install.IInstallAttributes"/> handlers are called for the installation data, but before it's handed out to consumers (and stored in the cache).
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.DumpInstallationData(JetBrains.Application.Install.InstallationData.InstallationData,System.String)">
            <summary>
            Dupms the given Registry data into a file.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.ComSelfRegister(JetBrains.Application.Install.RegistrationStage)">
            <summary>
            Self-registers for COM those assemblies that require such registration.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.GetInstallationData">
            <summary>
            Gets all the Registry data that should be written to or erased from the Registry upon installation or uninstallation.
            This includes the static app-global Registry data and dynamic registration info collected from the Assembly attributes.
            The first call is slow (the installation data is harvested), subsequent calls are fast because the result is cached.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.CollectAttributeInstallers">
            <summary>
            Collects the handlers that implement installation against the assembly attributes, see <see cref="T:JetBrains.Application.Install.InstallAttributesAttribute"/>.
            Do not call, use <see cref="P:JetBrains.Application.Install.Installer.MapAttributeToInstallers"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.InvokeAttributeInstallersInstance(JetBrains.Application.Install.InstallationData.InstallationData)">
            <summary>
            Invokes the registration handlers for assembly attributes, see <see cref="P:JetBrains.Application.Install.Installer.MapAttributeToInstallers"/>, from the assemblies listed in the <c>AllAssemblies.xml</c>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.InvokeAttributeInstallersStatic(JetBrains.Application.Install.InstallationData.InstallationData)">
            <summary>
            Collects the one-time global registration data from the attribute installers, one that is not per-attribute or per-assembly.
            Invoked from <see cref="M:JetBrains.Application.Install.Installer.InvokeAttributeInstallersInstance(JetBrains.Application.Install.InstallationData.InstallationData)"/>, don't call manually.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.AssertVersionSpecific">
            <summary>
            Throws if <see cref="P:JetBrains.Application.Install.Installer.IsVsVersionNeutral"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.LoadMetadataAssembly(JetBrains.Build.AllAssemblies.AssemblyNameXml)">
            <summary>
            Loads the assembly with metadata reader based on the assembly name.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Installer.Dispose">
            <summary> 
            Clean up any resources being used.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Installer.ApplicationDescriptor">
            <summary>
            Gets the product descriptor that provides the essential data on the product being installed or uninstalled.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Installer.IsVsVersionNeutral">
            <summary>
            <para>Gets whether the installer is currently running in the VS-version-neutral mode.</para>
            <para>The installer is conscequently run on the same data for each of VS versions supported, to produce VS-version-specific data for each VS.</para>
            <para>Also it's run once in VS-version-neutral mode to collect the shared things (and avoid collecting them more than once, if included in version-specific runs).</para>
            <para>When <c>False</c>, you can use the <see cref="P:JetBrains.Application.Install.Installer.VsVersion"/>, <see cref="P:JetBrains.Application.Install.Installer.VsRootSuffix"/>, and <see cref="P:JetBrains.Application.Install.Installer.VsHive"/> attributes to learn the version. When <c>True</c>, the abovementioned properties cannot be access, and will throw.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Installer.MapInstallerTypeToInstance">
            <summary>
            Maps the attribute-installer types to the created instances of their objects.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Installer.ResolveSourceDirRoot">
            <summary>
            Gets or sets the resolver that allows to get a physical file system path for the given source file system directory root.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Installer.VsHive">
            <summary>
            Gets the VS Hive that is the VS Version + VS RootSuffix.
            Examples: “8.0”, “8.0ReSharper”.
            The installation data is bound to a specific hive.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Installer.VsRootSuffix">
            <summary>
            Gets the VS Root Suffix, eg the main one (an empty string) or the experimental one (eg “ReSharper”).
            The installation data is bound to a specific hive.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Installer.VsVersion">
            <summary>
            Gets the version of the Visual Studio. Example: “8.0”.
            If the installer is running in the VS-version-neutral mode, throws an exception.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Installer.MapAttributeToInstallers">
            <summary>
            Maps the attributes storing the installation data to the objects that process their registration and unregistration.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallerApplicationDescriptor.myDescriptorInstalledProduct">
            <summary>
            Descriptor of the product we're installing.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallerShellStarter.StartShell">
            <summary>
            <para>Starts the application shell based on this instance.</para>
            <para>The <see cref="P:JetBrains.Application.Shell.HasInstance"/> is expected to be <c>True</c> after this method returns. It's an error to call this method if already <see cref="P:JetBrains.Application.Shell.HasInstance"/> is <c>True</c>.</para>
            <para>See notes on <see cref="T:JetBrains.Application.IApplicationDescriptor"/> for info on how Shells and Application Descriptors work together, and how this method should be implemented.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallerShellStarter.ApplicationDescriptor">
            <summary>
            Gets the <see cref="T:JetBrains.Application.IApplicationDescriptor">Application Descriptor</see> for the application and the <see cref="T:JetBrains.Application.Shell"/> that will be created.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallerShellStarter.CommandLine">
            <summary>
            Gets the application command line.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ShellBase">
            <summary>
            Some base implementations for the very-abstract <see cref="T:JetBrains.Application.Shell"/> class.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Shell">
            <summary>    
            Interface which represents root point for environment API.
            
            Use the <see cref="P:JetBrains.Application.Shell.Instance"/> property to obtain the <i>Shell</i> instance.  
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.XmlExternalizableComponentContainer">
            <summary>
            A component container with XML serialization capabilities for the component settings.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.ComponentContainer">
            <summary>
            Base class for component containers. Provides storage for components and initialization services
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.IComponentContainer">
            <summary>
            Base interface for abstract component container
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.IComponentContainer.GetComponent``1">
            <summary>
            Gets the component whose interface type is <typeparamref name="TInterface"/>.
            Throws if there is no such component. Use <see cref="M:JetBrains.ComponentModel.IComponentContainer.HasComponent``1"/> to check.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.IComponentContainer.HasComponent``1">
            <summary>
            Gets whether a component whose interface type is <typeparamref name="TInterface"/> is available.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.IComponentContainer.TryGetComponent(System.Type)">
            <summary>
            Gets the component whose interface type is <paramref name="componentInterfaceType"/>.
            Returns <c>Null</c> if there is no such component.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.IComponentContainer.TryGetComponent``1">
            <summary>
            Gets the component whose interface type is <typeparamref name="TInterface"/>.
            Returns <c>Null</c> if there is no such component.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.ICollectionChangedEventSink`1">
            <summary>
            This interface follows the COM pattern for sinking the events, ie by implementing an interface.
            Mimics the <see cref="E:System.Collections.Specialized.Dummy.INotifyCollectionChanged.CollectionChanged"/> event, but with a simpler and strongly-typed interface for our cases.
            Mimics the <see cref="P:JetBrains.DataFlow.ICollectionEvents`1.AddRemove"/> in some way, but supports grouping modifications together (for mass-changes), which is important for our sinks.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ICollectionChangedEventSink`1.OnAdd(System.Collections.Generic.ICollection{`0})">
            <summary>
            The sink sees new items in the collection view.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ICollectionChangedEventSink`1.OnRemove(System.Collections.Generic.ICollection{`0})">
            <summary>
            The sink sees some items going away from the collection view.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myComponentDeclarations">
            <summary>
            Monitors component types coming and going.
            Assigned in <see cref="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponents(JetBrains.ComponentModel.ComponentDeclarationsCache)"/>, released in <see cref="M:JetBrains.ComponentModel.ComponentContainer.Dispose"/>.
            Note: must not be disposed of, it's reusable!
            Primary Thread access only.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myComponentInitOrderCounter">
            <summary>
            The first free slot for adding to <see cref="F:JetBrains.ComponentModel.ComponentContainer.myComponentInitOrderMap"/>.
            UI Thread access only.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myComponentInitOrderMap">
            <summary>
            Maps a component instance to its initialization sequence number (this is intentionally non per-Type).
            Counted by exit from <see cref="M:JetBrains.ComponentModel.IComponent.Init"/>.
            Could be used to dispose of the components: when disposed of in reverse init-exit order, it's guaranteed that the set of components not disposed of yet will be no smaller than what was accessible to the component in its init.
            Primary Thread access only.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myComponentsSortedByType">
            <summary>
            Lists values of <see cref="F:JetBrains.ComponentModel.ComponentContainer.myMapImplTypeToComponent"/> sorted by their implementation type. This provides for the stable sorting order, as needed for serializing settings to get the same text representation of the same data repeatedly.
            Primary thread use only.
            Updated on each copy-on-write of <see cref="F:JetBrains.ComponentModel.ComponentContainer.myMapImplTypeToComponent"/>. This seems to be better than having the SortedDictionary for storage (O(log(N)) retrieval instead of O(1) for hash-based dictionary).
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myCurrentInitializingComponent">
            <summary>
            Prevent circular component dependencies: component Init could cause Init of another component when it's accessed, don't allow looping such calls. <see cref="F:JetBrains.ComponentModel.ComponentContainer.myCurrentInitializingComponent"/> is the only component whose GetComponent could be looped from Init.
            Primary Thread modifications only (inside <see cref="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponentIfNeeded(JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData,JetBrains.Util.OnError)"/>), lock-free access.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myDispatcher">
            <summary>
            Marks the container's thread affinity.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myInterfaceTypesEverKnown">
            <summary>
            The interface types of components that ever were present in this container, to tell apart the errors when requesting a nonexistent component that has gone away already or has never been here.
            Must be immutable, Primary thread copy-on-write, lock-free access on any threads.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myIsAddingRemovingComponentDeclarationGroups">
            <summary>
            When a group of component types is loaded, and their instances are created, this flag is raised. Same for unloading.
            Prevents reentrancy in these methods because they use copy-on-write which is not reentrable.
            Primary thread modifications only.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myMapImplTypeToComponent">
            <summary>
            Looks up component instances by the type of their implementation.
            There're components without any interfaces, that's why we need this map at all.
            Must be immutable, Primary thread copy-on-write, lock-free access on any threads.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.myMapIntfTypeToComponent">
            <summary>
            Looks up component instances by the type of their interface.
            This is the main component lookup bag.
            Must be immutable, Primary thread copy-on-write, lock-free access on any threads.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.ConfigurationElementName">
            <summary>
            Name of the <c>Configuration</c> element in the XML config files.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.AssertValidComponent(JetBrains.ComponentModel.IComponent)">
            <summary>
            <para>Allows to validate components in the container.</para>
            <para>Throwing an exception will prevent the component from being loaded.</para>
            <para>If the error is non-fatal, report it with <see cref="T:JetBrains.Util.Logger"/>'s assertion methods.</para>
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.GetInitializedComponentsInStableOrder">
            <summary>
            Gets all of the currently initialized components in an order that is stable between product runs.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponents(JetBrains.ComponentModel.ComponentDeclarationsCache)">
            <summary>
            Initializes the components in the container.
            </summary>
            <param name="declarationscache">Caches component types list among the instances of component containers. This should not be done for shells, as their assembly sets and configs may vary. This should be done for solutions and projects within the lifetime of the shell, so that to speed up their creation.</param>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.DisposeComponent(JetBrains.ComponentModel.IComponent)">
            <summary>
            Just calls the component's <see cref="M:System.IDisposable.Dispose"/>.
            Part of the shutdown.
            Primary thread use only.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponent(JetBrains.ComponentModel.IComponent)">
            <summary>
            Initializes the component by calling its <see cref="M:JetBrains.ComponentModel.IComponent.Init"/> method.
            Might be reentered (for different components only) if component's Init triggers an Init of some other component.
            Primary thread use only.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.IsComponentSupported(JetBrains.ComponentModel.ComponentDescriptor)">
            <summary>
            Filters out components not supported in the current runtime environment.
            Override in derived classes to provide the filtering.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponentIfNeeded(JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData,JetBrains.Util.OnError)">
            <summary>
            To be called from <c>TryGetComponent…</c> only.
            Inits the component if it has not been inited yet.
            Usually the caller would check if the component is inited, for speed; we check here once again just in case.
            Primary thread only (ignored for already-initializeds).
            </summary>
            <param name="data">Thing to init.</param>
            <param name="onerror">Throw out to abort and never get an invalid component. Ignore or log to allow silent failures, check retval.</param>
            <returns><c>True</c> if the component is in the initialized state on return. <c>False</c> in case of problems, shouldn't be if <paramref name="onerror"/> throws.</returns>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.OnAdd_Logical(System.Collections.Generic.IEnumerable{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            Logical Creation.
            Components are initialized.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.OnAdd_Physical(System.Collections.Generic.IEnumerable{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            Physical Creation.
            Component instances are created and added to the store, but not initialized.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.OnRemove_Logical(System.Collections.Generic.List{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            Logical Destruction.
            Components are disposed of.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.OnRemove_Physical(System.Collections.Generic.IEnumerable{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            Physical Removal.
            Component instance datas are removed from the store.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.TryGetComponentCore(System.Type,JetBrains.Util.OnError)">
            <summary>
            Core impl for [Try]GetComponent. NotNull or CanBeNull depending on the params.
            </summary>
            <param name="componentInterfaceType">Component interface to look up.</param>
            <param name="onerror">Throw out to abort and get NotNull, ignore or log to get CanBeNull.</param>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.JetBrains#ComponentModel#ICollectionChangedEventSink{JetBrains#ComponentModel#ComponentDescriptor}#OnAdd(System.Collections.Generic.ICollection{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            The sink sees new items in the collection view.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.JetBrains#ComponentModel#ICollectionChangedEventSink{JetBrains#ComponentModel#ComponentDescriptor}#OnRemove(System.Collections.Generic.ICollection{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            The sink sees some items going away from the collection view.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.TryGetComponent(System.Type)">
            <summary>
            Gets the component whose interface type is <paramref name="componentInterfaceType"/>.
            Returns <c>Null</c> if there is no such component.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.TryGetComponent``1">
            <summary>
            Gets the component whose interface type is <typeparamref name="TInterface"/>.
            Returns <c>Null</c> if there is no such component.
            </summary>
        </member>
        <member name="P:JetBrains.ComponentModel.ComponentContainer.ComponentConstructorArgument">
            <summary>
            An argument to the component constructor. The component container itself, by default.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.ComponentInitState.Clean">
            <summary>
            The component has just been created, it has not been initialized yet.
            Cannot be returned from GetComponent in this state.
            If queried from the Primary thread, initializes the component; on other threads, fails.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.ComponentInitState.DoingInit">
            <summary>
            We're currently initializing the component.
            Can be queried on the Primary thread only if there're no nested component initializations (because such a condition means a circular dependency); on other threads, fails.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.ComponentInitState.Initialized">
            <summary>
            The component has been initialized and its instance is accessible from any thread.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.ComponentInitState.Corrupted">
            <summary>
            We attempted to init the component, but it has failed to complete its Init.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.#ctor(JetBrains.ComponentModel.ComponentDescriptor,System.Object)">
            <summary>
            Creates the component instance.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.Component">
            <summary>
            The component instance.
            Three phases:
            (1) Non-Initialized component, <see cref="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.Component"/> is non-<c>Null</c> by construction, <see cref="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.IsInitialized"/> is <c>False</c>. Components are first all created, then all inited, that's why this state exists. Getting this component on the Primary thread inits it, on any other thread fails.
            (2) Running component, <see cref="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.Component"/> is still non-<c>Null</c>, <see cref="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.IsInitialized"/> is <c>True</c>. Possibly, not all components enter this state. Main state of the component when the product is alive. Such a component can be gotten-instance without any restrictions.
            (3) Disposed component. <see cref="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.Component"/> is <c>Null</c>, <see cref="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.IsInitialized"/> is undefined. The datas are removed from the dictionary in bulk, because the dictionary is copy-on-write, and until the pack of components is removed, those that were disposed are in this state. Getting such a component fails.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.Descriptor">
            <summary>
            The decriptor from which the component were created. Gives out its interface type.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainer.ComponentInstanceData.IsInitialized">
            <summary>
            Init state of the component: whether it is ready for handing out or not, plus a couple service states.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.IXmlExternalizableComponentContainer">
            <summary>
            A component container with XML serialization capabilities for the component settings.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.ISaveSettings">
            <summary>
            An interface for a component that has some settings and they should be saved whenever all of the application settings are being saved.
            // TODO: rework when we have a mature settings model.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ISaveSettings.LoadSettings">
            <summary>
            <para>Tells the component container to reload the settings from the persistent media, deserialize them from the bag, and apply them to the components.</para>
            <para>If a particular component has not been initialized yet, it will be called for <see cref="M:JetBrains.Util.IXmlExternalizable.ReadFromXml(System.Xml.XmlElement)"/> / <see cref="M:JetBrains.Util.IXmlUpgradable.UpgradeFromXml(System.Xml.XmlElement,System.Version)"/> before its <see cref="M:JetBrains.ComponentModel.IComponent.Init"/>. Otherwise, those xml-related methods will be called on it for the second and so on time.</para>
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ISaveSettings.SaveSettings">
            <summary>
            <para>Tells the component container that it's about time to query the components of their settings, serialize them to the bag, and write that to the persistent media.</para>
            <para>You must make sure this method is called on component containers in the end of the session. The component container will never save settings on its own.</para>
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.myXmlSettingsBag">
            <summary>
            Maps the <see cref="T:JetBrains.ComponentModel.IXmlExternalizableComponent"/>'s <see cref="P:JetBrains.ComponentModel.IXmlExternalizableComponent.Scope"/> and <see cref="P:JetBrains.ComponentModel.IXmlExternalizableComponent.TagName"/> into the <see cref="T:System.Xml.XmlElement"/> that hold its settings.
            This stores the settings after they're read from the storage and before they're loaded by the components, and before they're written back to the storage. 
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.myVersionUpgradingFrom">
            <summary>
            Whenever an older version of the settings file is found to be upgraded, set to the version of the product that supposedly produced that file.
            Otherwise, <c>Null</c>, which means that the upgrade should not be called.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.myXmlDocumentSettings">
            <summary>
            A dummy XML document for creating XML elements for component settings. When settings are deserialized, set to their XML document.
            It's not important which XmlDoc to use, we'd just like to minimize their number.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.InitializeComponent_XmlConfigurable(JetBrains.Util.IXmlConfigurableComponent)">
            <summary>
            For an XML-configurable component, loads its config and applies to the component.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ComponentReadFromXmlBag(JetBrains.ComponentModel.IXmlExternalizableComponent)">
            <summary>
            Applies the related settings currently in the XML Bag to the <paramref name="component"/>'s <see cref="M:JetBrains.Util.IXmlExternalizable.ReadFromXml(System.Xml.XmlElement)"/> or <see cref="M:JetBrains.Util.IXmlUpgradable.UpgradeFromXml(System.Xml.XmlElement,System.Version)"/>.
            This implements the full settings-reading protocol for the component.
            Executed either before component init or in case of <see cref="!:IXmlExternalizableComponentContainer.LoadSettings"/>.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ComponentWriteToXmlBag(JetBrains.ComponentModel.IXmlExternalizableComponent)">
            <summary>
            Requests settings from the component and stores them into the XML Bag so that it could be then serialized.
            Might throw.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.OnLoadSettingsXmlBag(System.Action{System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope})">
            <summary>
            <para>Invoked by the base implementation when it's time to load the XML Settings Bag from the permanent storage. Typically, in <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.LoadSettings"/> that's called from <see cref="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponents(JetBrains.ComponentModel.ComponentDeclarationsCache)"/>.</para>
            <para>This logic (like, choosing the file) must be implemented by the inheritor. The inheritor might look for legacy settings files from previous versions if the normal settings file is missing and set <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ShouldUpgradeSettings(System.Version)"/> to use them with <see cref="T:JetBrains.Util.IXmlUpgradable"/> components.</para>
            <para>Call <see paramref="funcDeserializeXmlBag"/> to submit the XML representation of the settings for a particular scope (see <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.DeserializeXmlBag(System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope)"/> for details).</para>
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.OnSaveSettingsXmlBag(System.Func{System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope,System.Boolean})">
            <summary>
            <para>Invoked by the base implementation when it's time to save the XML Settings Bag to the permanent storage. Typically, in response to <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.SaveSettings"/> after the components are serialized into the bag.</para>
            <para>This logic (like, choosing the file) must be implemented by the inheritor.</para>
            <para>Call <see paramref="funcSerializeXmlBag"/> to get the settings for a particular scope in XML representation (see <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.SerializeXmlBag(System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope)"/> for details).</para>
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ShouldUpgradeSettings(System.Version)">
            <summary>
            When the settings are being read from the XML settings files, sets the mark whether the Upgrade functionality should be called on the components when they're initialized with their settings in <see cref="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponent(JetBrains.ComponentModel.IComponent)"/>.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ComponentReadFromXmlBag_TrySettingsElement(JetBrains.ComponentModel.IXmlExternalizableComponent)">
            <summary>
            There were no upgrade, but there's a valid settings element, and it will be applied.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ComponentReadFromXmlBag_TryUpgrade(JetBrains.ComponentModel.IXmlExternalizableComponent)">
            <summary>
            If in upgrade mode, see for upgrade data for this component.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.DeserializeXmlBag(System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope)">
            <summary>
            Reads from an XML document and stores into the XML Bag.
            Collects the entries for the <see cref="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.myXmlSettingsBag"/> map from the <paramref name="document"/>.
            The scope is given by <paramref name="scope"/>, and the name comes from the XML tag names.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ReadFromXmlBagIntoComponents">
            <summary>
            Reads component settings for all of the components from the XML Settings bag.
            Note: the component container does this automatically before it initializes the component.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.SerializeXmlBag(System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope)">
            <summary>
            Writes the component settings to the XML Document.
            </summary>
            <param name="xmlDoc">Target.</param>
            <param name="scope">The scope to filter the components against, or <c>0</c> to include them all.</param>
            <returns>Whether anything were written. This could be used to avoid creating empty proj/sol settings files.</returns>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.WriteToXmlBagFromComponents">
            <summary>
            Writes component settings for all of the components into the XML Settings bag.
            Note: the component container does this automatically on <see cref="M:JetBrains.ComponentModel.ISaveSettings.SaveSettings"/>.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.InitializeComponents(JetBrains.ComponentModel.ComponentDeclarationsCache)">
            <summary>
            Initializes the components in the container.
            </summary>
            <param name="declarationscache">Caches component types list among the instances of component containers. This should not be done for shells, as their assembly sets and configs may vary. This should be done for solutions and projects within the lifetime of the shell, so that to speed up their creation.</param>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.InitializeComponent(JetBrains.ComponentModel.IComponent)">
            <summary>
            Overrides the base init-component to perform XML-related ops.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.LoadSettings">
            <summary>
            <para>Tells the component container to reload the settings from the persistent media, deserialize them from the bag, and apply them to the components.</para>
            <para>If a particular component has not been initialized yet, it will be called for <see cref="M:JetBrains.Util.IXmlExternalizable.ReadFromXml(System.Xml.XmlElement)"/> / <see cref="M:JetBrains.Util.IXmlUpgradable.UpgradeFromXml(System.Xml.XmlElement,System.Version)"/> before its <see cref="M:JetBrains.ComponentModel.IComponent.Init"/>. Otherwise, those xml-related methods will be called on it for the second and so on time.</para>
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.SaveSettings">
            <summary>
            Tells the component container that it's about time to query the components of their settings, serialize them to the bag, and write that to the persistent media.
            </summary>
        </member>
        <member name="P:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ValidXmlExternalizationScopes">
            <summary>
            Override this property to provide a list of scopes that are valid for components in this container.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession">
            <summary>
            Creates/checks the timestamps on the component settings.
            Tells whether the settings are allowed to be written.
            </summary>
            <remarks>
            If some component is missing from runtime for more than the specified retention period, the settings of such a component are discarded.
            Note that if the component is present but writes no settings, the old ones are removed at that moment, so this is not the case.
            The timestamping and checking are both done before the component is written.
            Missing timestamp means the data is coming fresh from the component.
            </remarks>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession._convDateTime">
            <summary>
            Cache.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession._dtNow">
            <summary>
            Cache.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession._sNow">
            <summary>
            Cache.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession.RetentionPeriod">
            <summary>
            See <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession.ShouldKeep(System.Xml.XmlElement)"/>.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession.TimestampAttributeName">
            <summary>
            See <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession.ShouldKeep(System.Xml.XmlElement)"/>.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.RetentionPolicySession.ShouldKeep(System.Xml.XmlElement)">
            <summary>
            Creates/checks the timestamps on the component settings.
            Tells whether the settings are allowed to be written.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Shell.PushTypeLoadingHandler(JetBrains.Application.ITypeLoadingHandler)">
            <summary>
            Registers the type loading handler and returns a token for unregistering it.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Shell.Shutdown">
            <summary>
            Shuts the shell down.
            </summary>    
        </member>
        <member name="M:JetBrains.Application.Shell.LoadSettings">
            <summary>
            <para>Tells the component container to reload the settings from the persistent media, deserialize them from the bag, and apply them to the components.</para>
            <para>If a particular component has not been initialized yet, it will be called for <see cref="M:JetBrains.Util.IXmlExternalizable.ReadFromXml(System.Xml.XmlElement)"/> / <see cref="M:JetBrains.Util.IXmlUpgradable.UpgradeFromXml(System.Xml.XmlElement,System.Version)"/> before its <see cref="M:JetBrains.ComponentModel.IComponent.Init"/>. Otherwise, those xml-related methods will be called on it for the second and so on time.</para>
            </summary>
        </member>
        <member name="M:JetBrains.Application.Shell.SaveSettings">
            <summary>
            Tells the component container that it's about time to query the components of their settings, serialize them to the bag, and write that to the persistent media.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.HasInstance">
            <summary>
            Tells whether the <see cref="P:JetBrains.Application.Shell.Instance"/> is available, and the property could be read.
            When <c>False</c>, <see cref="P:JetBrains.Application.Shell.Instance"/> throws an exception.
            </summary>
            <remarks>Notes to inheritors: <see cref="P:JetBrains.Application.Shell.HasInstance"/> and <see cref="P:JetBrains.Application.Shell.Instance"/> must be overridden in sync.</remarks>
        </member>
        <member name="P:JetBrains.Application.Shell.Instance">
            <summary>
            Gets the instance of the Application Shell.
            If not available, throws an exception. Check the <see cref="P:JetBrains.Application.Shell.HasInstance"/> property value to see if <see cref="P:JetBrains.Application.Shell.Instance"/> can be accessed. 
            </summary>
            <remarks>Notes to inheritors: <see cref="P:JetBrains.Application.Shell.HasInstance"/> and <see cref="P:JetBrains.Application.Shell.Instance"/> must be overridden in sync.</remarks>
        </member>
        <member name="P:JetBrains.Application.Shell.AssemblyConfigurations">
            <summary>
            Gets the assembly configurations in which the product is running, which defines the set of assemblies from <see cref="T:JetBrains.Build.AllAssemblies.AllAssembliesXml"/> to load.
            Currently, an assembly must meet all of the configurations to be loaded.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.Components">
            <summary>
            <para>Provides access to the major application-global components and subsystems.</para>
            <para>As all of the members of this class are <see cref="T:System.Runtime.CompilerServices.ExtensionAttribute">extension methods</see>, use R# Type Completion after dot to see the complete member list.</para>
            </summary>
            <remarks>Note to implementors: typically, you would create a static class called <c>ShellComponentsEx</c> in your own project and place the extension methods into it.</remarks>
        </member>
        <member name="P:JetBrains.Application.Shell.Descriptor">
            <summary>
            Gets the <see cref="T:JetBrains.Application.IApplicationDescriptor">Application Descriptor</see> for the running Shell.
            An Application Descriptor holds the static (runtime-independent) properties of the product.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.InstallDir">
            <summary>
            Gets the directory in which the product assemblies are located.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.UserId">
            <summary>
            Gets permanent unique user Id. The Id is saved in Registry under HKLM\Software\JetBrains\Platform section. <br />
            The Id is used to idendify same user even after ReSharper (or another product) is reinstalled or downgraded.
            Please note that the Id is shared among all JetBrains applications intalled by the user.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.InstallDirFromRegistry">
            <summary>
            You should use <see cref="P:JetBrains.Application.Shell.InstallDir"/> from the Registry in most cases.
            Reads the product install dir from the Registry. Falls back to <see cref="P:JetBrains.Application.Shell.InstallDir"/> if not available.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.Invocator">
            <summary>
            Gets the invocator that executes arbitrary actions on the application's primary thread in a reentrant-safe manner.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.IsInInternalMode">
            <summary>
            Indicates that the current shell is running in the internal mode, so some extra functionality is available.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.IsTestShell">
            <summary>
            Indicates that the current shell is a unit-test shell
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.Locks">
            <summary>
            Exposes the Read/Write Lock API.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.PrimaryDispatcher">
            <summary>
            Gets the dispatcher attached to the <see cref="P:JetBrains.Application.Shell.PrimaryThread">UI thread</see>.
            Can be used for marshalling or async queueing of the tasks.	
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.ProductRegistryKey">
            <summary>
            Gets the path to the product's Registry key.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.UserSettingsLocalDir">
            <summary>
            Gets the full path to the computer-local per-user folder that stores the product settings.
            This folder should be used for storing large or easily-re-generated files, like type index caches.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.UserSettingsRoamingDir">
            <summary>
            Gets the full path to the network-roaming per-user folder that stores the product settings.
            This folder should be used for storing small and non-re-generatable files only.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Shell.UserSettingsRoamingLegacyDirs">
            <summary>
            Gets the list of legacy user-settings dirs (coming from previous product version), actually found on the local system, sorted in descending priority order.
            The second part of the tuple is the product version of the legacy settings file.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.Disposables">
            <summary>
            Actions to be executed when the shell is shut down.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.myInvocator">
            <summary>
            <see cref="P:JetBrains.Application.ShellBase.Invocator"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.myUserSettingsText">
            <summary>
            Caches the initial content of the User Settings file, to check for modifications before overwriting the file on exit or explicit save (eg Options::OK).
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.myUserSettingsTimestamp">
            <summary>
            Timestamp of the file loaded as user settings, to check for external modifications when we're about to save the file on exit or explicit save (eg Options::OK).
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.myPrimaryDispatcher">
            <summary>
            Specifies the dispatcher on the UI thread.
            Can be used for marshalling or async queueing of the tasks.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.myProductRegistryKey">
            <summary>
            Caches <see cref="P:JetBrains.Application.ShellBase.ProductRegistryKey"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.myShellStarter">
            <summary>
            Stores the process runtime context info, helps with restarting the current shell in the same config (but for the changes to runtime, like Product Edition).
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.myUserSettingsLocalDir">
            <summary>
            Caches <see cref="P:JetBrains.Application.ShellBase.UserSettingsLocalDir"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.myUserSettingsRoamingDir">
            <summary>
            Caches <see cref="P:JetBrains.Application.ShellBase.UserSettingsRoamingDir"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.#ctor(JetBrains.Application.IShellStarter,System.Collections.Generic.IList{JetBrains.Application.AssemblyConfiguration})">
            <summary>
            Creates a Shell instance. To create a Shell, use a <c>Start</c> overload on an <see cref="T:JetBrains.Application.IApplicationDescriptor"/> for the product you'd like to run.
            </summary>
            <param name="shellstarter">Process runtime context.</param>
            <param name="assemblyconfigurations">Defines the of assemblies to use for the product.</param>
        </member>
        <member name="F:JetBrains.Application.ShellBase.ProductRegistryKeyPrefix_Software">
            <summary>
            Registry prefix before the <see cref="M:JetBrains.Application.ShellStarter.GetProductSettingsSuffix_Generic(System.String,System.Version)"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.PropExtendBuildDescription">
            <summary>
            If the <see cref="T:JetBrains.Application.IApplicationDescriptor"/> has this entry in its bag, it will be called to extend the standard <see cref="M:JetBrains.Application.ShellBase.FormatBuildDescription(JetBrains.Application.IApplicationDescriptor,System.Collections.Generic.IEnumerable{JetBrains.Application.AssemblyConfiguration})"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellBase.PropGetLegacySettingsFiles">
            <summary>
            A property that <see cref="T:JetBrains.Application.IApplicationDescriptor"/>s could put into their <see cref="P:JetBrains.Application.IApplicationDescriptor.Bag"/>s to look for older-version settings in non-standard folders when there are no up-to-date-version settings found and we would like to upgrade from an older version.
            The strings are file path names.
            The versions are versions of the product to which the settings supposedly belong.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.CommandLineInitLogger(JetBrains.Application.ICommandLine)">
            <summary>
            Applies the command line arguments to the logger.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.FormatBuildDescription(JetBrains.Application.IApplicationDescriptor,System.Collections.Generic.IEnumerable{JetBrains.Application.AssemblyConfiguration})">
            <summary>
            Gets the plaintext description that identifies the current build.
            </summary>
            <param name="descriptor">Application descriptor. Take from <see cref="P:JetBrains.Application.Shell.Descriptor"/> when <see cref="P:JetBrains.Application.Shell.HasInstance"/>. VS Package bootstrapper or exception reporter might have descriptor available from its own sources. If <c>Null</c>, some of the info will be retrieved from <see cref="T:JetBrains.Application.Defines"/> instead.</param>
            <param name="assemblyconfigurations">Assembly configurations of the currently running Shell. Take from <see cref="P:JetBrains.Application.Shell.AssemblyConfigurations"/> when <see cref="P:JetBrains.Application.Shell.HasInstance"/>. If <c>Null</c>, this information will not be available.</param>
        </member>
        <member name="M:JetBrains.Application.ShellBase.PrependCaptionWithProductName(System.String)">
            <summary>
            Prepends a caption string with the product name, separated with an en-dash.
            If the <see cref="T:JetBrains.Application.Shell"/> is available, its <see cref="P:JetBrains.Application.IApplicationDescriptor.ProductName"/> is used. Otherwise, the static company name is substituted.
            </summary>
            <param name="caption">The original caption to prepend with the product name.</param>
        </member>
        <member name="M:JetBrains.Application.ShellBase.RestartShell">
            <summary>
            Shuts down the current Shell, and starts a new one off the same <see cref="T:JetBrains.Application.IApplicationDescriptor"/>.
            A Shell must be running for this method to succeed.
            This method executes asynchronously.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.RestartShell(JetBrains.Application.IApplicationDescriptor,System.Func{JetBrains.Application.Shell})">
            <summary>
            Shuts down the current Shell, if any, and starts a new Shell off the given <paramref name="descriptor">Application Descriptor</paramref>.
            This method executes asynchronously.
            </summary>
            <param name="descriptor">The Application Descriptor describing the new shell. Used mostly for diagnostics.</param>
            <param name="FDoStart">Actually starts the shell. The added value of this method is that it shuts down the old shell first and waits before starting a new one.</param>
        </member>
        <member name="M:JetBrains.Application.ShellBase.GetUserSettingsDocument">
            <summary>
            Tries to load the XML Document for <see cref="F:JetBrains.ComponentModel.XmlExternalizationScope.UserSettings"/> (either from current version location, or any of the legacy dirs for an upgrade).
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.GetUserSettingsLastWriteTime">
            <summary>
            Save reader of the <see cref="F:JetBrains.ComponentModel.XmlExternalizationScope.UserSettings"/> XML file (current version only) modification timestamp.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.GetWorkspaceDocument">
            <summary>
            Tries to load the XML Document for <see cref="F:JetBrains.ComponentModel.XmlExternalizationScope.UserSettings"/> (either from current version location, or any of the legacy dirs for an upgrade).
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.InitializeComponents">
            <summary>
            Initializes the Shell components.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.QueryOverwriteUserSettingsFile">
            <summary>
            Determines if the <see cref="F:JetBrains.ComponentModel.XmlExternalizationScope.UserSettings"/> file should be overwritten.
            Called if the file has been changed since loading, and there were external changes to the settings file on part of some other process at the same time.
            For example, the UI Shell implementation is to show a Message Box prompt.
            The default implementation would always overwrite the settings file.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.GetUserSettingsAnyDir(System.Environment.SpecialFolder)">
            <summary>
            Backend for “UserSettings…”  funcs.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.GetUserSettingsDocument_CurrentVersion">
            <summary>
            Looks for just the current version. Also saves initial content and timestamp to check for overwrites.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.GetUserSettingsDocument_LegacyVersion">
            <summary>
            Settings from prev versions for upgrade. Initial-content/timestamp not saved in this branch.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.Init_GuardInvocatorLocks">
            <summary>
            Prevents <see cref="P:JetBrains.Application.ShellBase.Invocator"/> reentrancy when a lock is taken (temporary).
            Asserts that any primary-thread lock is guarded by <see cref="P:JetBrains.Application.ShellBase.Invocator"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.Init_IsInInternalMode">
            <summary>
            Checks whether the assembly config means we're running in the Internal mode.
            Inits things to the Internal mode as needed.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.InitializeComponents(JetBrains.ComponentModel.ComponentDeclarationsCache)">
            <summary>
            Specifies the component container cache, sealed as the override is parameterless from now on.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellBase.PushTypeLoadingHandler(JetBrains.Application.ITypeLoadingHandler)">
            <summary>
            Registers the type loading handler and returns a token for unregistering it.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.UserSettingsXmlPath">
            <summary>
            Full path to the User Settings (<see cref="F:JetBrains.ComponentModel.XmlExternalizationScope.UserSettings"/>) XML file we save.
            Overridden in some of the DotTrace subproducts.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.WorkspaceXmlPath">
            <summary>
            Full path to the Workspace Settings (<see cref="F:JetBrains.ComponentModel.XmlExternalizationScope.WorkspaceSettings"/>) XML file we save.
            Overridden in some of the DotTrace subproducts.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.AssemblyConfigurations">
            <summary>
            Gets the assembly configurations in which the product is running, which defines the set of assemblies from <see cref="T:JetBrains.Build.AllAssemblies.AllAssembliesXml"/> to load.
            Currently, an assembly must meet all of the configurations to be loaded.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.InstallDir">
            <summary>
            Gets the directory in which the product assemblies are located.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.InstallDirFromRegistry">
            <summary>
            You should use <see cref="P:JetBrains.Application.ShellBase.InstallDir"/> from the Registry in most cases.
            Reads the product install dir from the Registry. Falls back to <see cref="P:JetBrains.Application.Shell.InstallDir"/> if not available.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.Invocator">
            <summary>
            Gets the invocator that executes arbitrary actions on the application's primary thread in a reentrant-safe manner.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.Locks">
            <summary>
            Exposes the Read/Write Lock API.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.PrimaryDispatcher">
            <summary>
            Gets the dispatcher attached to the <see cref="P:JetBrains.Application.ShellBase.PrimaryThread">UI thread</see>.
            Can be used for marshalling or async queueing of the tasks.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.ProductRegistryKey">
            <summary>
            Gets the path to the product's Registry key.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.UserId">
            <summary>
            Gets permanent unique user Id. The Id is saved in Registry under HKLM\Software\JetBrains\Platform section. <br />
            The Id is used to idendify same user even after ReSharper (or another product) is reinstalled or downgraded.
            Please note that the Id is shared among all JetBrains applications intalled by the user.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.UserSettingsLocalDir">
            <summary>
            Gets the full path to the computer-local per-user folder that stores the product settings.
            This folder should be used for storing large or easily-re-generated files, like type index caches.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.UserSettingsRoamingDir">
            <summary>
            Gets the full path to the network-roaming per-user folder that stores the product settings.
            This folder should be used for storing small and non-re-generatable files only.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellBase.UserSettingsRoamingLegacyDirs">
            <summary>
            Gets the list of legacy user-settings dirs (coming from previous product version), actually found on the local system, sorted in descending priority order.
            The second part of the tuple is the product version of the legacy settings file.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallerShell.OnLoadSettingsXmlBag(System.Action{System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope})">
            <summary>
            <para>Invoked by the base implementation when it's time to load the XML Settings Bag from the permanent storage. Typically, in <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.LoadSettings"/> that's called from <see cref="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponents(JetBrains.ComponentModel.ComponentDeclarationsCache)"/>.</para>
            <para>This logic (like, choosing the file) must be implemented by the inheritor. The inheritor might look for legacy settings files from previous versions if the normal settings file is missing and set <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.ShouldUpgradeSettings(System.Version)"/> to use them with <see cref="T:JetBrains.Util.IXmlUpgradable"/> components.</para>
            <para>Call <see paramref="funcDeserializeXmlBag"/> to submit the XML representation of the settings for a particular scope (see <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.DeserializeXmlBag(System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope)"/> for details).</para>
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallerShell.OnSaveSettingsXmlBag(System.Func{System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope,System.Boolean})">
            <summary>
            <para>Invoked by the base implementation when it's time to save the XML Settings Bag to the permanent storage. Typically, in response to <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.SaveSettings"/> after the components are serialized into the bag.</para>
            <para>This logic (like, choosing the file) must be implemented by the inheritor.</para>
            <para>Call <see paramref="funcSerializeXmlBag"/> to get the settings for a particular scope in XML representation (see <see cref="M:JetBrains.ComponentModel.XmlExternalizableComponentContainer.SerializeXmlBag(System.Xml.XmlDocument,JetBrains.ComponentModel.XmlExternalizationScope)"/> for details).</para>
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallerShell.QueryOverwriteUserSettingsFile">
            <summary>
            Determines if the <see cref="F:JetBrains.ComponentModel.XmlExternalizationScope.UserSettings"/> file should be overwritten.
            Called if the file has been changed since loading, and there were external changes to the settings file on part of some other process at the same time.
            The UI Shell implementation is to show a Message Box prompt.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.RegistrationStage">
            <summary>
            Defines the exact stage of the registration process of which the handler is being queried.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.RegistrationStage.Register">
            <summary>
            The assembly is being registered.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.RegistrationStage.Unregister">
            <summary>
            The assembly is being unregistered.
            </summary>
        </member>
        <member name="T:JetBrains.Application.KnownSettings`1">
            <summary>
            Maintains a table of the pre-registered setting identities that are validated as much as possible.
            The settings can be accessed thru a strongly-typed key, with their type and default value consistent across all the calls.
            The settings are still stored in the <see cref="T:JetBrains.Application.GlobalSettingsTable"/>.
            </summary>
            <typeparam name="TKey"></typeparam>
        </member>
        <member name="F:JetBrains.Application.KnownSettings`1.myKnownSettings">
            <summary>
            The list of the known settings.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.#ctor">
            <summary>
            Creates an empty table to be filled with <see cref="M:JetBrains.Application.KnownSettings`1.Register(JetBrains.Application.KnownSettings{`0}.SettingDescriptor)"/> afterwards.
            <see cref="M:JetBrains.Application.KnownSettings`1.AssertAllRegistered"/> is not called, it's up to you.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.#ctor(JetBrains.Application.KnownSettings{`0}.SettingDescriptor[])">
            <summary>
            Creates an initialized table, uses <see cref="M:JetBrains.Application.KnownSettings`1.AssertAllRegistered"/> to check that there are no orphaned keys in the <typeparamref name="TKey"/> enum.
            </summary>
            <param name="descriptors"></param>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.AssertKnownType(System.Type)">
            <summary>
            Checks whether we support settings of the type <paramref name="type"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.AssertAllRegistered">
            <summary>
            Checks that all the keys from the <see cref="T:JetBrains.Util.Key"/> enum are present in the table.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.Get``1(`0)">
            <summary>
            Gets a setting by its strongly-typed key.
            </summary>
            <typeparam name="T">Type of the setting. Must exactly match the expected setting value type.</typeparam>
            <param name="key">The strongly-typed key for the setting.</param>
            <returns>The setting value, if available.</returns>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.Register(JetBrains.Application.KnownSettings{`0}.SettingDescriptor)">
            <summary>
            Adds a new known setting.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.Register(`0,System.Object)">
            <summary>
            Adds a new known setting.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.Register(`0,System.String,System.Object)">
            <summary>
            Adds a new known setting.
            </summary>
        </member>
        <member name="T:JetBrains.Application.KnownSettings`1.SettingDescriptor">
            <summary>
            Describes a known setting with its type and default value.
            </summary>
        </member>
        <member name="F:JetBrains.Application.KnownSettings`1.SettingDescriptor.DefaultValue">
            <summary>
            Default value, must be of type <see cref="T:System.Type"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.KnownSettings`1.SettingDescriptor.Key">
            <summary>
            The key in the known settings table.
            </summary>
        </member>
        <member name="F:JetBrains.Application.KnownSettings`1.SettingDescriptor.SettingKey">
            <summary>
            The settings-key in the underlying settings store.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.SettingDescriptor.#ctor(`0,System.String,System.Object)">
            <summary>
            Validates and fills in.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.SettingDescriptor.#ctor(`0,System.Object)">
            <summary>
            Validates and fills in.
            The settings key name is deferred from the key value.
            </summary>
        </member>
        <member name="M:JetBrains.Application.KnownSettings`1.SettingDescriptor.AssertValid">
            <summary>
            Throws if fields are invalid.
            </summary>
        </member>
        <member name="M:JetBrains.Application.License.ILicenseSupport.CreateLicenseData(System.String,System.String,System.String)">
            <summary>
            Creates license data using licenseKey, userName and company name. If only one type of licenses is acceptable,
            normally returns new LicenseData(...). Otherwise some additional processing should take place
            </summary>
        </member>
        <member name="M:JetBrains.Application.License.ILicenseSupport.GetLicenseAgreement(JetBrains.Application.License.LicenseType)">
            <summary>
            License agreement in rich text. NULL if no license agreement is necessary
            </summary>
        </member>
        <member name="P:JetBrains.Application.License.ILicenseSupport.ProductGuid">
            <summary>
            Guid (with braces), that is used to store Date marker
            </summary>
        </member>
        <member name="P:JetBrains.Application.License.ILicenseSupport.FreeTrialPeriod">
            <summary>
            Number of days, free trial period lasts
            </summary>
        </member>
        <member name="P:JetBrains.Application.License.ILicenseSupport.FeedbackRequestPeriod">
            <summary>
            Number of free trial days, after which feedback is requested.
            Negative value means feedback is never requested.
            </summary>
        </member>
        <member name="P:JetBrains.Application.License.ILicenseSupport.LeftDaysNotification">
            <summary>
            Identifies, when to start informing user that, his free trial
            period ends up 
            </summary>
        </member>
        <member name="P:JetBrains.Application.License.ILicenseSupport.ProductFamily">
            <summary>
            JetBrains license server supports ProductFamily as guid without braces !!!
            </summary>
        </member>
        <member name="P:JetBrains.Application.License.LicenseChecker.IsChecksumOK">
            does stored checksum corresponds to the username's one?
            checksum occupies 16 bits
        </member>
        <member name="P:JetBrains.Application.License.LicenseChecker.Version">
            gets OmniaMea version stored in the license code
            occupies 16 bits
        </member>
        <member name="P:JetBrains.Application.License.LicenseChecker.Type">
            gets type of the license stored in the license code
            occupies 8 bits
        </member>
        <member name="P:JetBrains.Application.License.LicenseChecker.GenerationDate">
            gets license generation date stored in the license code
            occupies 16 bits
        </member>
        <member name="P:JetBrains.Application.License.LicenseChecker.ExpirationDate">
            gets license expiration date stored in the license code
            occupies 16 bits
        </member>
        <member name="M:JetBrains.Application.OneTimeInitializationManager.OnCheckFailed(System.Exception)">
            <summary>
            Invoked when one-time-init fails to read/write the Regsitry. Should report to the user in an app-dependent manner.
            </summary>
        </member>
        <member name="P:JetBrains.Application.OneTimeInitializationManager.IsOneTimeInitAllowed">
            <summary>
            Gets whether the one-time-init is allowed to run at the moment, eg the main window has already been created.
            </summary>
        </member>
        <member name="T:JetBrains.Application.OneTimeInitializationAttribute">
            <summary>
            To use this feature implement <see cref="T:JetBrains.Application.IOneTimeInitializationHandler"/> with default constructor.
            This class is not expected to be <see cref="T:JetBrains.ComponentModel.IComponent"/>.
            Initialization will be performed in UIThread on <c>IVsShellComponent.OnAfterStartup()</c> call time.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Advance(JetBrains.Application.Progress.IProgressIndicator)">
            <summary>
            <para>Advances the progress by default fraction (1.0) within the range, as defined by the <see cref="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Start(JetBrains.Application.Progress.IProgressIndicator,System.Int32,System.String)"/> call.</para>
            <para><see cref="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Start(JetBrains.Application.Progress.IProgressIndicator,System.Int32,System.String)"/> MUST be called first.</para>
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Advance(JetBrains.Application.Progress.IProgressIndicator,System.Double,System.Action{JetBrains.Application.Progress.IProgressIndicator})">
            <summary>
            <para>Advances the <paramref name="progressParent"/> by <paramref name="fUnitsInParentIndicator"/> units, while running the <paramref name="funcAdvanceSubprogress"/> task.</para>
            <para>Unlike the core <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/> method, the increment goes gradually, as the <paramref name="funcAdvanceSubprogress"/> calls <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> on the <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> it is given as a parameter. Note that its units are totally indipendent of the <paramref name="fUnitsInParentIndicator"/> in the <paramref name="progressParent"/>. Any range it chooses in its <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> will result in <paramref name="fUnitsInParentIndicator"/> advance of the parent.</para>
            </summary>
            <param name="progressParent">The parent progress.</param>
            <param name="fUnitsInParentIndicator">The number of units used up from the <paramref name="progressParent"/>, in terms of its parent <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/>, when you do <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> on this subprogress with any units of your liking.</param>
            <param name="funcAdvanceSubprogress">The subtask that gets its own subprogress.</param>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.CreateSubProgress(JetBrains.Application.Progress.IProgressIndicator,System.Double)">
            <summary>
            <para>A sub-routine runs the whole <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> run on the subprogress, with units of its own choice in <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> and <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/> on the subprogress, which uses up only <paramref name="fUnitsInParentIndicator"/> in the parent <paramref name="progressParent"/>, in terms of its parent <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/>.</para>
            <para>This way, a few tasks could share the full progress range without knowing that they're using it together, each one running the whole length of its subprogress.</para>
            </summary>
            <param name="progressParent">The parent progress.</param>
            <param name="fUnitsInParentIndicator">The number of units used up from the <paramref name="progressParent"/>, in terms of its parent <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/>, when you do <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> on this subprogress with any units of your liking.</param>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.CreateSubProgress(JetBrains.Application.Progress.IProgressIndicator)">
            <summary>
              <para>
                A sub-routine runs the whole <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/>
                run on the subprogress, with units of its own choice in <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> and
                <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/> on the subprogress, in terms of its parent
                <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/>.
              </para>
              <para>
                This way, a few tasks could share the full progress range without knowing that they're using it together,
                each one running the whole length of its subprogress.
              </para>
            </summary>
            <param name="progressParent">The parent progress.</param>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.ForEachWithProgressImpl``1(System.Collections.Generic.ICollection{``0},JetBrains.Application.Progress.IProgressIndicator,System.String,System.Boolean,System.Action{JetBrains.Application.Progress.IProgressIndicator,``0})">
            <summary>
            A LINQ-like FOREACH with progress.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.ForEachWithProgress``1(System.Collections.Generic.ICollection{``0},JetBrains.Application.Progress.IProgressIndicator,System.String,System.Boolean,System.Action{``0,JetBrains.Application.Progress.IProgressIndicator})">
            <summary>
            A LINQ-like FOREACH with progress.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.ForEachWithProgress``1(System.Collections.Generic.ICollection{``0},JetBrains.Application.Progress.IProgressIndicator,System.String,System.Action{``0,JetBrains.Application.Progress.IProgressIndicator})">
            <summary>
            A LINQ-like FOREACH with progress.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.ForEachWithProgress``1(System.Collections.Generic.ICollection{``0},JetBrains.Application.Progress.IProgressIndicator,System.String,System.Boolean,System.Action{``0})">
            <summary>
            A LINQ-like FOREACH with progress.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.ForEachWithProgress``1(System.Collections.Generic.ICollection{``0},JetBrains.Application.Progress.IProgressIndicator,System.String,System.Action{``0})">
            <summary>
            A LINQ-like FOREACH with progress.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.SelectWProgress``2(System.Collections.Generic.ICollection{``0},JetBrains.Application.Progress.IProgressIndicator,System.String,System.Func{``0,``1})">
            <summary>
            A LINQ-like SELECT statement with progress.
            Works on <see cref="T:System.Collections.Generic.ICollection`1"/>, returns a committed <see cref="T:System.Collections.Generic.List`1"/>.
            </summary>
            <typeparam name="TSource">Source item types.</typeparam>
            <typeparam name="TResult">Resulting item types.</typeparam>
            <param name="source">Source items.</param>
            <param name="progress">The progress to track the source items iteration.</param>
            <param name="taskname">Name for the progress run.</param>
            <param name="selector">Selector function.</param>
            <returns>The resulting items.</returns>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Start(JetBrains.Application.Progress.IProgressIndicator,System.Int32,System.String)">
            <summary>
            <para>Starts the progress to run through the [0..totalWorkUnits] range. You MUST call <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> at the end. Use <see cref="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Advance(JetBrains.Application.Progress.IProgressIndicator)"/> to move the progress across the range.</para>
            <para>Generally, you SHOULD set the <see cref="P:JetBrains.Application.Progress.IProgressIndicator.TaskName"/> to identify the current execution span, once per <see cref="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Start(JetBrains.Application.Progress.IProgressIndicator,System.Int32,System.String)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/>, and change the <see cref="P:JetBrains.Application.Progress.IProgressIndicator.CurrentItemText"/> when doing <see cref="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Advance(JetBrains.Application.Progress.IProgressIndicator)"/> to comment on the progress.</para>
            <para>If you would like to delegate a sub-range to a nested routine, you SHOULD create a <see cref="T:JetBrains.Application.Progress.SubProgressIndicator"/> and pass the resulting <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> to the routine, so that it ran a whole range from its point of view, which would then map to a sub-range of this progress indicator.</para>
            </summary>
            <param name="progress">Progress indicator.</param>
            <param name="totalWorkUnits">The inclusive upper limit of the progress range.</param>
            <param name="sTaskName">The <see cref="P:JetBrains.Application.Progress.IProgressIndicator.TaskName"/> value to be set for the run. You SHOULD NOT leave it unmodified, unless you are running a subprogress.</param>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.StartProgress(JetBrains.Application.Progress.IProgressIndicator,System.Int32)">
            <summary>
            <para>Just call <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> and return the same instance of <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/>. See <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> for details.</para>
            </summary>
            <param name="progress">Progress indicator.</param>
            <param name="totalWorkUnits">The inclusive upper limit of the progress range.</param>
            <returns>The same instance of IProgressIndicator in order to use fluent interface.</returns>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.StartProgress(JetBrains.Application.Progress.IProgressIndicator,System.Int32,System.String)">
            <summary>
            <para>Just call <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> and return the same instance of <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/>. See <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> for details.</para>
            </summary>
            <param name="progress">Progress indicator.</param>
            <param name="taskName">The <see cref="P:JetBrains.Application.Progress.IProgressIndicator.TaskName"/> value to be set for the run. You SHOULD NOT leave it unmodified, unless you are running a subprogress.</param>
            <param name="totalWorkUnits">The inclusive upper limit of the progress range.</param>
            <returns>The same instance of IProgressIndicator in order to use fluent interface.</returns>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.StartStop(JetBrains.Application.Progress.IProgressIndicator,System.Int32,System.String,System.Action)">
            <summary>
            <para>Starts the progress to run through the [0..totalWorkUnits] range, executes <paramref name="action"/>, and then stops the progress. Use <see cref="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Advance(JetBrains.Application.Progress.IProgressIndicator)"/> to move the progress across the range.</para>
            <para>Generally, you SHOULD set the <see cref="P:JetBrains.Application.Progress.IProgressIndicator.TaskName"/> to identify the current execution span, once per <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/>, and change the <see cref="P:JetBrains.Application.Progress.IProgressIndicator.CurrentItemText"/> when doing <see cref="M:JetBrains.Application.Progress.ProgressIndicatorExtensions.Advance(JetBrains.Application.Progress.IProgressIndicator)"/> to comment on the progress.</para>
            <para>If you would like to delegate a sub-range to a nested routine, you SHOULD create a <see cref="T:JetBrains.Application.Progress.SubProgressIndicator"/> and pass the resulting <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> to the routine, so that it ran a whole range from its point of view, which would then map to a sub-range of this progress indicator.</para>
            </summary>
            <param name="progress">Progress indicator.</param>
            <param name="totalWorkUnits">The inclusive upper limit of the progress range.</param>
            <param name="taskName">The <see cref="P:JetBrains.Application.Progress.IProgressIndicator.TaskName"/> value to be set for the run. You SHOULD NOT leave it unmodified, unless you are running a subprogress.</param>
            <param name="action">The task to execute in between <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> and <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/>.</param>
        </member>
        <member name="M:JetBrains.Application.TypeIndexBuilder.LoadIndex(System.Xml.XmlDocument,JetBrains.Util.DataStructures.DataIntern{System.String})">
            <summary>
            Loads a map from assembly name to a map for attribute fqn to type fqn
            </summary>
            <param name="document"></param>
            <param name="internator"></param>
            <returns></returns>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivity.Start">
            <summary>
            Override this method with activity that should happen in primary thread before background thread
            </summary>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivity.Work">
            <summary>
            Override this method with activity that happens in background thread.
            </summary>
            This method should periodically check return value of <c>interrupt</c> and either return or 
            throw <c>ProcessCancelledException</c>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivity.EndWorkerThread">
            <summary>
            This method will always be invoked at the end of worker thread
            </summary>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivity.Finish">
            <summary>
            Override this method with activity that will happen in primary thread after worker thread finishesþ
            </summary>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivity.OnInterrupt">
            <summary>
            This method is invoked in primary thread if work is interrupted. 
            </summary>
            If this method is invoked, <cref>Finish</cref> will NOT be called.
            
        </member>
        <member name="M:JetBrains.Application.Progress.CommandLineProgressIndicator.Render">
            <summary>
              Renders current state of Console progress
            </summary>
        </member>
        <member name="T:JetBrains.Application.Progress.CommandLineTaskExecutor">
            <summary>
            Task executor for progress in console
            </summary>
        </member>
        <member name="T:JetBrains.Application.Progress.ITaskExecutor">
            <summary>
            Can execute a task.
            </summary>
            <remarks>
            This object is stateless, and thus not disposable.
            Execution of each of the tasks is an action in itself, with its own disposable scope.
            </remarks>
        </member>
        <member name="M:JetBrains.Application.Progress.ITaskExecutor.ExecuteTask(System.String,JetBrains.Application.Progress.TaskCancelable,System.Action{JetBrains.Application.Progress.IProgressIndicator})">
            <summary>
            Executes the task without exiting the method until the task is completed.
            </summary>
            <param name="name">
            <para>Task title, short form.</para>
            <para>This is used for the progress window title by the UI progress indicators.</para>
            <para>The long form of the task caption should go to the <see cref="P:JetBrains.Application.Progress.IProgressIndicator.TaskName"/> of the <paramref name="task"/>'s <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/>.</para>
            <para>Prepended with the product name automatically. Might be empty, in which case the product name will be used.</para>
            </param>
            <param name="task">The task to execute.</param>
            <param name="cancelable">
            <para>Whether the task could be canceled by the user, if the task progress indication provided by <see cref="T:JetBrains.Application.Progress.ITaskExecutor"/> supports canceling.</para>
            <para>The <see cref="T:JetBrains.Application.Progress.ProcessCancelledException"/> pattern is supported, which means that an <see cref="T:JetBrains.Application.InterruptableActivityCookie"/> is plugged on the task thread to throw a <see cref="T:JetBrains.Application.Progress.ProcessCancelledException"/> when called for a check with a <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsCanceled"/> <c>False</c>; such an exception is called by the task executor and converted into a <c>False</c> return value.</para>
            </param>
            <returns>Whether the task has completed execution (i.e. was not canceled). Note that even a <see cref="F:JetBrains.Application.Progress.TaskCancelable.No"/> task could be canceled by setting <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsCanceled"/> to <c>False</c> or throwing a <see cref="T:JetBrains.Application.Progress.ProcessCancelledException"/> or letting some other exception out of the <paramref name="task">task function</paramref>.</returns>
            <remarks>If you would like to return any values from the <paramref name="task"/>, assign them to local variables within the closure.</remarks>
        </member>
        <member name="T:JetBrains.Application.Progress.ProcessCancelledException">
            <summary>
            A special Platform exception that fires when an interruptible activity is aborted.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.BaseTest.ThrowLoggedExceptions(System.Boolean)">
            <summary>
            Throws all of the logged exceptions collected by silent <see cref="M:JetBrains.Util.Logger.LogException(System.Exception)"/> and <see cref="M:JetBrains.Util.Logger.Assert(System.Boolean,System.String)"/> family methods.
            </summary>
            <param name="bGC">Whether to perform a full CG so that to collect the errors from hanging finalizers.</param>
        </member>
        <member name="T:JetBrains.Application.CommandProcessing.CommandProcessor">
            <summary>
            Command processor that performs undoable actions
            </summary>
        </member>
        <member name="M:JetBrains.Application.CommandProcessing.CommandProcessor.BeginCommand(System.String)">
            <summary>
            These calls should not be nested
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.ComponentAttributeBase">
            <summary>
            Component interfaces and implementations should be marked with an attribute that is inherited from this type.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentAttributeBase.#ctor">
            <summary>
            <para>Denotes a component ignorant of the <see cref="P:JetBrains.ComponentModel.ComponentAttributeBase.ProgramConfigurations"/>.</para>
            <para>Its presence is conrtolled by the <see cref="T:JetBrains.Application.AssemblyConfiguration"/> and the set of assemblies selected for the product instead.</para>
            <para>This is the preferred method for controlling the component set. Fallback to the <see cref="P:JetBrains.ComponentModel.ComponentAttributeBase.ProgramConfigurations"/> only if you cannot express the configuration by manipulating the assembly set.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestComponentBase.Scope">
            <summary>
            Scope that defines which store the data goes into.
            Must not be <c>0</c>.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Test.TestShell">
            <summary>
            The test shell implementation to be created by the tests that need a shell.
            The shell should be reused throughout the tests that:
            • Are defined in the same assembly.
            • Share the same AllAssemblies.Xml.
            • Share the same configuration assembly.
            To create a Test Shell, instantiate a <see cref="T:JetBrains.Application.Test.TestsApplicationDescriptor"/> and invoke its <see cref="M:JetBrains.Application.IShellStarter.StartShell"/> method.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Test.TestShell.myAsmTests">
            <summary>
            The assembly with tests for which the test shell has been created.
            Shell should be re-created for each new assembly with tests.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.#ctor(JetBrains.Application.IShellStarter,System.Collections.Generic.IList{JetBrains.Application.AssemblyConfiguration},System.Reflection.Assembly)">
            <summary>
            Creates a Test Shell on a call from <see cref="T:JetBrains.Application.Test.TestsApplicationDescriptor"/>'s <see cref="M:JetBrains.Application.IShellStarter.StartShell"/> method. Use the latter to create a new Test Shell.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.AssertReegaIsClean">
            <summary>
            Ensures the Reentrancy Guard is empty after executing the test.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.GetTestSolutionFolder">
            <summary>
            Gets a base path for test solution projects.
            Cleans up the path before use.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.PushAsyncBehaviorAllowed">
            <summary>
            Allows temporarily posting messages on this thread, for async or multi-thread tests.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.RunGuarded(System.Action)">
            <summary>
            Runs the test code under the <see cref="T:JetBrains.Threading.ReentrancyGuard"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.ThrowLoggedExceptions(System.Boolean)">
            <summary>
            Throws all of the logged exceptions collected by silent <see cref="M:JetBrains.Util.Logger.LogException(System.Exception)"/> and <see cref="M:JetBrains.Util.Logger.Assert(System.Boolean,System.String)"/> family methods.
            </summary>
            <param name="bGC">Whether to perform a full CG so that to collect the errors from hanging finalizers.</param>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.TestMessageBox(System.IntPtr,System.String,System.String,JetBrains.Interop.WinApi.MessageBoxFlags)">
            <summary>
            Suppresses message boxes in tests.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.CanReuseFor(System.Reflection.Assembly,System.Reflection.Assembly,System.String)">
            <summary>
            Checks whether the test shell instance can be reused by the test with the given parameters.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.QueryOverwriteUserSettingsFile">
            <summary>
            Determines if the <see cref="F:JetBrains.ComponentModel.XmlExternalizationScope.UserSettings"/> file should be overwritten.
            Called if the file has been changed since loading, and there were external changes to the settings file on part of some other process at the same time.
            The UI Shell implementation is to show a Message Box prompt.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestShell.HasInstance">
            <summary>
            Tells whether the <see cref="P:JetBrains.Application.Test.TestShell.Instance"/> is available, and the property could be read.
            When <c>False</c>, <see cref="P:JetBrains.Application.Test.TestShell.Instance"/> throws an exception.
            </summary>
            <remarks>Notes to inheritors: <see cref="P:JetBrains.Application.Test.TestShell.HasInstance"/> and <see cref="P:JetBrains.Application.Test.TestShell.Instance"/> must be overridden in sync.</remarks>
        </member>
        <member name="P:JetBrains.Application.Test.TestShell.Instance">
            <summary>
            Gets the instance of the Test Application Shell.
            If not available, throws an exception. Check the <see cref="P:JetBrains.Application.Test.TestShell.HasInstance"/> property value to see if <see cref="P:JetBrains.Application.Test.TestShell.Instance"/> can be accessed. 
            </summary>
            <remarks>Notes to inheritors: <see cref="P:JetBrains.Application.Test.TestShell.HasInstance"/> and <see cref="P:JetBrains.Application.Test.TestShell.Instance"/> must be overridden in sync.</remarks>
        </member>
        <member name="T:JetBrains.Application.Test.TestShell.TestLogger">
            <summary>
            Allows to log a number of entries and then collect them.
            Used by lazy test authors for injecting into the components under tests.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestShell.TestLogger.Start">
            <summary>
            Enables and clears.
            </summary>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.AllAssembliesXml">
            <remarks/>
        </member>
        <member name="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myAssemblyConfigurationAliases">
            <summary>
            Lists the assembly configuration aliases. Maps them to the the expression defined by the alias.
            </summary>
        </member>
        <member name="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myHashProductEditionAssemblyConfigurations">
            <summary>
            All assembly configurations that could be attributed to product editions. Lazy-filled by <see cref="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.LoadCore_CacheProductEditions"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myKnownAssemblyConfigurations">
            <summary>
            Lists the assembly configurations from <see cref="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.KnownConfigurations"/>. Maps to usage data (<c>True</c> means there's at least one assembly using this config).
            </summary>
        </member>
        <member name="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myMapAssemblyConfigurationsToProductEdition">
            <summary>
            Mapping for product edition translations, lazy-filled by <see cref="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.LoadCore_CacheProductEditions"/>.
            </summary>
        </member>
        <member name="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myMapProductAssemblies">
            <summary>
            Allows to learn quickly if the assembly is a product assembly or not.
            </summary>
        </member>
        <member name="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myMapProductEditionToAssemblyConfigurations">
            <summary>
            Mapping for product edition translations, lazy-filled by <see cref="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.LoadCore_CacheProductEditions"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.Load(System.IO.Stream)">
            <summary>
            Loads and validates the All Assemblies schema.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.ExecuteConfigurationExpression(System.String,System.Collections.Generic.HashSet{System.String})">
            <summary>
            Executes the configurations logical expression from <paramref name="expression"/> that could contain configuration names, aliases, and logical operations. <paramref name="activeconfigs"/> gives the list of configurations that are considered active.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.GetOrphanedConfigs">
            <summary>
            Gets the list of known configurations that were defined but are not used by any of the assembiles or aliases.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.ParseAssemblyConfiguration(System.String)">
            <summary>
            Parses the string value of the assembly configuration and creates the configuration object.
            Validates the value against the known configurations list.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.ParseProductEdition(System.String)">
            <summary>
            Parses the string value of the product edition and creates the edition object.
            Note that this value should be the <see cref="P:JetBrains.Application.KnownValue.Value"/> not <see cref="P:JetBrains.Application.ProductEdition.DisplayName"/>.
            Validates the value against the known configurations list.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.ProductEditionFromAssemblyConfigurations(System.Collections.Generic.ICollection{JetBrains.Application.AssemblyConfiguration},System.Boolean,System.Action{System.Exception})">
            <summary>
            <para>A product edition has two representations: (1) a <see cref="T:JetBrains.Application.ProductEdition"/> that's basically a string identifier that is used for the license information and user display, and (2) a set of assembly configurations that comprise the given edition.</para>
            <para>This function converts between these representations.</para>
            </summary>
            <param name="assemblyconfigurations">The list of assembly configurations to be parsed as a product edition.</param>
            <param name="bAllowOtherConfigurations">Whether other assembly configurations not controlled by the product edition are allowed in the collection. This is the case when the configuration of a running Shell is passed in, because it also might include public/internal, VS version and other configurations.</param>
            <param name="FOnError">Called when an error is encountered. Throw the exception to have a never-returning-Null function, or pass in <see cref="M:JetBrains.Util.Logger.LogException(System.Exception)"/> to handle failures softly.</param>
            <returns>Product edition on success, a <see cref="P:JetBrains.Application.KnownValue.UniversalValue"/> in case of a failure or for a product that does not support product editions.</returns>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.ProductEditionToAssemblyConfigurations(JetBrains.Application.ProductEdition,System.Action{System.Exception})">
            <summary>
            <para>A product edition has two representations: (1) a <see cref="T:JetBrains.Application.ProductEdition"/> that's basically a string identifier that is used for the license information and user display, and (2) a set of assembly configurations that comprise the given edition.</para>
            <para>This function converts between these representations.</para>
            </summary>
            <param name="productedition">Product edition ID. <see cref="P:JetBrains.Application.KnownValue.UniversalValue"/> is only allowed if the product has no product editions, in which case it's the only allowed value.</param>
            <param name="FOnError">Called when an error is encountered. Throw the exception to have a never-returning-Null function, or pass in <see cref="M:JetBrains.Util.Logger.LogException(System.Exception)"/> to handle failures softly.</param>
            <returns>Product edition assembly configurations on success, an empty collection in case of a failure or for a product that does not support product editions.</returns>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.ResolveConfigurations(System.String)">
            <summary>
            Resolves a space-separated list of assembly configurations or configuration aliases into the list of actual configurations.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.TryGetProductAssembly(System.String)">
            <summary>
            Allows to quickly check if an assembly is a product assembly or not.
            </summary>
            <param name="name">Assembly name.</param>
            <returns>Product assembly descriptor, if found.</returns>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.EnumAllPossibleAssemblies">
            <summary>
            Enums all the assemblies in the list (not only product assemblies, but also product/platform/gac refs).
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.LoadCore_CacheProductEditions">
            <summary>
            Uses <see cref="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.ProductEditions"/> to fill the caching structures like <see cref="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myMapProductEditionToAssemblyConfigurations"/>, <see cref="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myHashProductEditionAssemblyConfigurations"/>, <see cref="F:JetBrains.Build.AllAssemblies.AllAssembliesXml.myMapAssemblyConfigurationsToProductEdition"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.LoadCore_ResolveAssemblyConfigs">
            <summary>
            (1) Calls resolve on config string of all the configurable assemblies.
            (2) Maintains the list of unused configs.
            </summary>
        </member>
        <member name="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.ResolveConfigurationsCore(System.String,System.Boolean)">
            <summary>
            Impl for <see cref="M:JetBrains.Build.AllAssemblies.AllAssembliesXml.ResolveConfigurations(System.String)"/>.
            </summary>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.KnownConfigurations">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.ConfigurationAliases">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.ProductEditions">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.Assemblies">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.PlatformReferences">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.ProductReferences">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.GacReferences">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.Product">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.AllAssembliesXmlSchema">
            <summary>
            Gets the XSD for the AllAssemblies.xml.
            </summary>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AllAssembliesXml.DefaultProductEdition">
            <summary>
            Gets the default product edition.
            For a product that does not support editions, returns a <see cref="P:JetBrains.Application.KnownValue.UniversalValue"/> value.
            </summary>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.KnownValueXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.KnownValueXml.Name">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.KnownValueXml.Description">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.ReferencesXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ReferencesXml.Reference">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.ReferenceAssemblyXml">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.InstalledAssemblyXml">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.AssemblyXml">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.ConfiguredAssemblyXml">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.AssemblyNameXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AssemblyNameXml.Name">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ConfiguredAssemblyXml.Configurations">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AssemblyXml.ComSelfRegister">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AssemblyXml.HasAppConfig">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AssemblyXml.HasMainfest">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AssemblyXml.HasXmlSerializers">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AssemblyXml.HasXmlDoc">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AssemblyXml.HasProgramDatabase">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.InstalledAssemblyXml.MsiComponentGuid">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.GacAssemblyXml">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.ProductAssemblyXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ProductAssemblyXml.ExcludedType">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ProductAssemblyXml.IsMEF">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.ExcludedTypeXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ExcludedTypeXml.Name">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.PlatformReferencesXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.PlatformReferencesXml.PlatformName">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.ConfigurationAliasXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ConfigurationAliasXml.Name">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ConfigurationAliasXml.Configurations">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.AssemblyConfigurationRefXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.AssemblyConfigurationRefXml.Name">
            <remarks/>
        </member>
        <member name="T:JetBrains.Build.AllAssemblies.ProductEditionXml">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ProductEditionXml.AssemblyConfigurationRef">
            <remarks/>
        </member>
        <member name="P:JetBrains.Build.AllAssemblies.ProductEditionXml.DisplayName">
            <remarks/>
        </member>
        <member name="T:JetBrains.Application.Install.Guids.GuidEntry">
            <summary>
            An entry in the GUID Store.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Guids.GuidEntry.Guid">
            <summary>
            GUID value of this entry.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Guids.GuidEntry.Key">
            <summary>
            Key to this entry. Must be unique throughout the dictionary.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.Guids.GuidEntryKey">
            <summary>
            Key to the GUID in the GUID Store.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidEntryKey.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>.
            </summary>
            <returns>
            true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>; otherwise, false.
            </returns>
            <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:System.Object"/>. </param><exception cref="T:System.NullReferenceException">The <paramref name="obj"/> parameter is null.</exception><filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidEntryKey.GetHashCode">
            <summary>
            Serves as a hash function for a particular type. 
            </summary>
            <returns>
            A hash code for the current <see cref="T:System.Object"/>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidEntryKey.ToString">
            <summary>
            Returns a <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>.
            </summary>
            <returns>
            A <see cref="T:System.String"/> that represents the current <see cref="T:System.Object"/>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidEntryKey.Equals(JetBrains.Application.Install.Guids.GuidEntryKey)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <returns>
            true if the current object is equal to the <paramref name="other"/> parameter; otherwise, false.
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="P:JetBrains.Application.Install.Guids.GuidEntryKey.Name">
            <summary>
            Gets the name of the key.
            This is the only key identity.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.Guids.GuidEntryKeyConverter">
            <summary>
            Knows how to switch between <see cref="T:JetBrains.Application.Install.Guids.GuidEntryKey"/>s and <see cref="T:System.String"/>s.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidEntryKeyConverter.CanConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Type)">
            <summary>
            Returns whether this converter can convert an object of the given type to the type of this converter, using the specified context.
            </summary>
            <returns>
            true if this converter can perform the conversion; otherwise, false.
            </returns>
            <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext"/> that provides a format context. </param><param name="sourceType">A <see cref="T:System.Type"/> that represents the type you want to convert from. </param>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidEntryKeyConverter.CanConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Type)">
            <summary>
            Returns whether this converter can convert the object to the specified type, using the specified context.
            </summary>
            <returns>
            true if this converter can perform the conversion; otherwise, false.
            </returns>
            <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext"/> that provides a format context. </param><param name="destinationType">A <see cref="T:System.Type"/> that represents the type you want to convert to. </param>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidEntryKeyConverter.ConvertFrom(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object)">
            <summary>
            Converts the given object to the type of this converter, using the specified context and culture information.
            </summary>
            <returns>
            An <see cref="T:System.Object"/> that represents the converted value.
            </returns>
            <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext"/> that provides a format context. </param><param name="culture">The <see cref="T:System.Globalization.CultureInfo"/> to use as the current culture. </param><param name="value">The <see cref="T:System.Object"/> to convert. </param><exception cref="T:System.NotSupportedException">The conversion cannot be performed. </exception>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidEntryKeyConverter.ConvertTo(System.ComponentModel.ITypeDescriptorContext,System.Globalization.CultureInfo,System.Object,System.Type)">
            <summary>
            Converts the given value object to the specified type, using the specified context and culture information.
            </summary>
            <returns>
            An <see cref="T:System.Object"/> that represents the converted value.
            </returns>
            <param name="context">An <see cref="T:System.ComponentModel.ITypeDescriptorContext"/> that provides a format context. </param><param name="culture">A <see cref="T:System.Globalization.CultureInfo"/>. If null is passed, the current culture is assumed. </param><param name="value">The <see cref="T:System.Object"/> to convert. </param><param name="destinationType">The <see cref="T:System.Type"/> to convert the <paramref name="value"/> parameter to. </param><exception cref="T:System.ArgumentNullException">The <paramref name="destinationType"/> parameter is null. </exception><exception cref="T:System.NotSupportedException">The conversion cannot be performed. </exception>
        </member>
        <member name="T:JetBrains.Application.Install.Guids.GuidEntryKeys">
            <summary>
            Well-known values for <see cref="T:JetBrains.Application.Install.Guids.GuidEntryKey"/>.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.Guids.GuidStore">
            <summary>
            Represents a store of GUIDs keyed by strings.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidStore.GetEntry(JetBrains.Application.Install.Guids.GuidEntryKey)">
            <summary>
            Tries to get an entry by its key.
            Throws if missing.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidStore.TryGetEntry(JetBrains.Application.Install.Guids.GuidEntryKey)">
            <summary>
            Tries to get an entry by its key.
            <c>Null</c>s if missing.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.Guids.GuidStore.TryGetEntryOrPropose(JetBrains.Application.Install.Guids.GuidEntryKey)">
            <summary>
            Tries to get an entry by its key.
            If missing, adds a new entry to the <see cref="P:JetBrains.Application.Install.Guids.GuidStore.ProposedEntries"/> collection, and returns an empty (but still non-<c>Null</c>) GUID.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Guids.GuidStore.Entries">
            <summary>
            A GUID value with its key.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.Guids.GuidStore.ProposedEntries">
            <summary>
            For GUID values whose keys were missing from the store, new entries are emitted into this collection, so that they could be moved into the main <see cref="P:JetBrains.Application.Install.Guids.GuidStore.Entries"/> collection by the operator.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstallationData">
            <summary>
            The root element of the product installation data.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstallationData.MergeWith(JetBrains.Application.Install.InstallationData.InstallationData)">
            <summary>
            Merges the <paramref name="addon"/> installation data into the host's, and destroys the former.
            All of the collections are guaranteed to be non-Null
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstallationData.RemoveDuplicates">
            <summary>
            Checks for duplicate keys and values, removes, if any.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstallationData.Folders">
            <summary>
            Gets the list of folders with files to install.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstallationData.Registry">
            <summary>
            Gets the installed Registry keys and values.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledFileItemBase">
            <summary>
            Base class for all of the files installed to the target system by the Installation Data items.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFileItemBase.#ctor(System.String)">
            <summary>
            Sets the name of the file item on the target filesystem.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFileItemBase.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>.
            </summary>
            <returns>
            true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>; otherwise, false.
            </returns>
            <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:System.Object"/>. </param><exception cref="T:System.NullReferenceException">The <paramref name="obj"/> parameter is null.</exception><filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFileItemBase.GetHashCode">
            <summary>
            Serves as a hash function for a particular type. 
            </summary>
            <returns>
            A hash code for the current <see cref="T:System.Object"/>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFileItemBase.System#IComparable{JetBrains#Application#Install#InstallationData#InstalledFileItemBase}#CompareTo(JetBrains.Application.Install.InstallationData.InstalledFileItemBase)">
            <summary>
            Compares the current object with another object of the same type.
            </summary>
            <returns>
            A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the <paramref name="other"/> parameter.Zero This object is equal to <paramref name="other"/>. Greater than zero This object is greater than <paramref name="other"/>. 
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFileItemBase.Equals(JetBrains.Application.Install.InstallationData.InstalledFileItemBase)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <returns>
            true if the current object is equal to the <paramref name="other"/> parameter; otherwise, false.
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledFileItemBase.TargetName">
            <summary>
            The local name of the file on the target system. If left empty, will be the same as the source name. Must be left empty if the source name matches more than one file.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledFolder">
            <summary>
            Folders that contain files that should be installed on the target system.
            In MSI, they create <c>Directory</c>s and <c>Component</c>s.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledFolder.Id">
            <summary>
            An ID for this folder entry, from which the component, folder and file IDs in the installation database are derived.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledFolder.SourceDir">
            <summary>
            Relative path from the <see cref="P:JetBrains.Application.Install.InstallationData.InstalledFolder.SourceRoot">specified root</see> to the directory on the source system.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledFolder.SourceRoot">
            <summary>
            One of the root folders to locate the file on the source system.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledFolder.TargetDir">
            <summary>
            Relative path from the <see cref="P:JetBrains.Application.Install.InstallationData.InstalledFolder.TargetRoot">specified root</see> to the directory on the target system.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledFolder.TargetRoot">
            <summary>
            One of the root folders to locate the file on the target system.
            </summary>
        </member>
        <member name="M:JetBrains.ActivityTracking.Impl.ActivityTracker.JetBrains#ComponentModel#IComponent#Init">
            <summary>
            <para>Initializes the component. Called by the component container after the component is created.</para>
            <para><see cref="M:System.IDisposable.Dispose"/> is the pairing method that's guaranteed to be called by the component container to tear down your component.</para>
            <para>You must not access other components before your <see cref="M:JetBrains.ActivityTracking.Impl.ActivityTracker.Init"/> method is called.</para>
            <para>All of the components that you access from <see cref="M:JetBrains.ActivityTracking.Impl.ActivityTracker.Init"/> are guaranteed to exist when your <see cref="M:System.IDisposable.Dispose"/> is called. Any other component might be missing by that time, and trying to get it will throw an exception.</para>
            </summary>
        </member>
        <member name="M:JetBrains.ActivityTracking.XmlSettingsToMetadataParametersUtil.AddNamedMetadataParameters(JetBrains.ActivityTracking.IActivityTracker,JetBrains.ComponentModel.IXmlExternalizableComponent)">
            <summary>
            Takes the settings written by the XML Externalizable and saves them as metadata parameters.
            </summary>
        </member>
        <member name="T:JetBrains.Application.IApplicationDescriptorEx">
            <summary>
            Extensions to <see cref="T:JetBrains.Application.IApplicationDescriptor"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.IApplicationDescriptorEx.GetProductAssembliesXml(JetBrains.Application.IApplicationDescriptor,System.Collections.Generic.IList{JetBrains.Application.AssemblyConfiguration})">
            <summary>
            Gets the list of assemblies defined by the <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesXml"/> file, filtered down by the active configuration.
            </summary>
        </member>
        <member name="M:JetBrains.Application.IApplicationDescriptorEx.GetVersionStringForAboutBox(JetBrains.Application.IApplicationDescriptor,System.Boolean,System.Collections.Generic.ICollection{JetBrains.Application.AssemblyConfiguration})">
            <summary>
            <para>Gets the version string for the current product, without the company name.</para>
            <para>Examples:</para>
            <code>
            ReSharper 5 Full Edition build 5.0.666.239 on 2009-06-12
            ReSharper 5 build 5.0.666.239 on 2009-06-12
            build 5.0.666.239 on 2009-06-12
            Full Edition build 5.0.666.239 on 2009-06-12
            </code>
            </summary>
            <param name="descriptor">Descriptor.</param>
            <param name="bPrependProductFullName">Whether the string should start with the product name.</param>
            <param name="configsForProductEdition">Optional. If the product is running, passing its configuration allows to show the product edition after the product name.</param>
        </member>
        <member name="M:JetBrains.Application.ProductEditionEx.GetCurrentProductEditon(JetBrains.Application.Shell)">
            <summary>
            Gets the product edition of the currently running product instance.
            </summary>
            <param name="shell"></param>
            <returns></returns>
        </member>
        <member name="M:JetBrains.Application.ProductEditionEx.IsEditionIncluded(JetBrains.Application.Shell,JetBrains.Application.ProductEdition)">
            <summary>
            Gets whether the current product edition includes the given edition.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ProductEditionEx.IsEditionIncluded(JetBrains.Application.Shell,System.String)">
            <summary>
            Gets whether the current product edition includes the given edition.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ProductEditionEx.SupportsEditions(JetBrains.Application.Shell)">
            <summary>
            Gets whether the current product supports editions.
            If no, only <see cref="P:JetBrains.Application.KnownValue.UniversalValue"/> is valid.
            If yes, <see cref="P:JetBrains.Application.KnownValue.UniversalValue"/> is invalid.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ShellStarter">
            <summary>
            <see cref="T:JetBrains.Application.IShellStarter"/> basic implementation. Provides well-known assembly configurations based on the Registry and Command Line.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellStarter.GetProductSettingsSuffix_Generic(JetBrains.Application.IApplicationDescriptor)">
            <summary>
            Gets the suffix that forms the <see cref="P:JetBrains.Application.ShellBase.ProductRegistryKey"/>, <see cref="P:JetBrains.Application.ShellBase.UserSettingsRoamingDir"/>, and <see cref="P:JetBrains.Application.ShellBase.UserSettingsLocalDir"/>.
            The template must not include location-specific parts (ie “Software” for registry or “AppData” for folder), as they should be concatenated by consumers.
            There should be no leading or trailing slashes.
            Note: NOT SUITABLE for calling in VS-BASED PRODUCTS.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellStarter.GetProductSettingsSuffix_Generic(System.String,System.Version)">
            <summary>
            Gets the suffix that forms the <see cref="P:JetBrains.Application.ShellBase.ProductRegistryKey"/>, <see cref="P:JetBrains.Application.ShellBase.UserSettingsRoamingDir"/>, and <see cref="P:JetBrains.Application.ShellBase.UserSettingsLocalDir"/>.
            The template must not include location-specific parts (ie “Software” for registry or “AppData” for folder), as they should be concatenated by consumers.
            There should be no leading or trailing slashes.
            Note: NOT SUITABLE for calling in VS-BASED PRODUCTS.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellStarter.GetAssemblyConfigurations">
            <summary>
            Calculates the current assembly config (note that it could be unique per shell run, while our object lives thru the process runtime).
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellStarter.GetRegistryProductEdition">
            <summary>
            Gets the current product edition, in terms of the list of assembly configurations that describe the edition.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellStarter.GetInternalMode">
            <summary>
            Checks cmdline for Internal Mode params, add Internal/Public mode if the product supports such configs.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellStarter.StartShell">
            <summary>
            <para>Starts the application shell based on this instance.</para>
            <para>The <see cref="P:JetBrains.Application.Shell.HasInstance"/> is expected to be <c>True</c> after this method returns. It's an error to call this method if already <see cref="P:JetBrains.Application.Shell.HasInstance"/> is <c>True</c>.</para>
            <para>See notes on <see cref="T:JetBrains.Application.IApplicationDescriptor"/> for info on how Shells and Application Descriptors work together, and how this method should be implemented.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellStarter.ApplicationDescriptor">
            <summary>
            Gets the <see cref="T:JetBrains.Application.IApplicationDescriptor">Application Descriptor</see> for the application and the <see cref="T:JetBrains.Application.Shell"/> that will be created.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ComponentModel2.IComponentScope.GetService``1">
            <summary>
            Gets the service <typeparamref name="TService"/>.
            Throws if there is no such component. Use <see cref="M:JetBrains.Application.ComponentModel2.IComponentScope.HasService``1"/> to check.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ComponentModel2.IComponentScope.HasService``1">
            <summary>
            Gets whether a service <typeparamref name="TService"/> is available.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ComponentModel2.IComponentScope.TryGetService``1">
            <summary>
            Gets the service whose interface type is <typeparamref name="TService"/>.
            Returns <c>Null</c> if there is no such service.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ComponentModel2.IComponentScope.ParentComponentScope">
            <summary>
            Outer environment if any, or null
            </summary>
        </member>
        <member name="P:JetBrains.Application.ComponentModel2.IComponentScope.Catalogue">
            <summary>
            Catalogue which is used to obtain components for this environment
            </summary>
        </member>
        <member name="T:JetBrains.Application.ComponentModel2.IComponent`1">
            <summary>
            Represents component 
            </summary>
        </member>
        <member name="P:JetBrains.Application.ComponentModel2.IComponent`1.Scope">
            <summary>
            Gets environment in which this component is scoped and allows for other components inqueries
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstallationMacroName">
            <summary>
            An enumeration of possible macro names, is not used directly in the XML files, but instead serves as a reference info or string constants from the code.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationMacroName.PackageCodeBase">
            <summary>
            Location of the Package assembly.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationMacroName.SystemDir">
            <summary>
            The System directory. Used to locate the mscoree.dll that is the COM Server for us.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationMacroName.ProductBinariesDir">
            <summary>
            The directory that contains the product binaries.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationMacroName.DateTime">
            <summary>
            Date and time at the moment the macro is resolved, in an arbitrary format. Use with care, because the date-time might resolve at the installation time on the user machine. The format is not defined. Fits for producing generation numbers.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot.InstallDir">
            <summary>
            Binaries installation directory on the remote system (the Bin folder).
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot.DevEnvInstallDir">
            <summary>
            Visual Studio installation directory on the remote system, the one that contains the DevEnv.exe executable file (the Common7\IDE folder).
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot.DevEnvRootDir">
            <summary>
            Visual Studio root directory on the remote system, this is two levels above the Visual Studio InstallDir that contains the DevEnv.exe executable file (the Common7\IDE folder).
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledFile">
            <summary>
            A single satellite file in the installation.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFile.#ctor(System.String)">
            <summary>
            An installation of a file whose source name (on the source file system) and target name (on the target file system) are the same.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFile.#ctor(System.String,System.String)">
            <summary>
            An installation of a file whose source name (on the source file system) and target name (on the target file system) are different.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstalledFile.Metadata">
            <summary>
            Any additional metadata on the files.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFile.GetFilesByMask(JetBrains.Util.FileSystemPath)">
            <summary>
            Gets the list of files to be installed if the file specifies a wildcard.
            </summary>
            <param name="pathSourceDir">The resolved path to the actual source directory of the file.</param>
            <returns>A tuple for each discovered file: full path to the source file, and the matching name of the target file.</returns>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFile.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>.
            </summary>
            <returns>
            true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>; otherwise, false.
            </returns>
            <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:System.Object"/>. </param><exception cref="T:System.NullReferenceException">The <paramref name="obj"/> parameter is null.</exception><filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFile.GetHashCode">
            <summary>
            Serves as a hash function for a particular type. 
            </summary>
            <returns>
            A hash code for the current <see cref="T:System.Object"/>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFile.System#IComparable{JetBrains#Application#Install#InstallationData#InstalledFile}#CompareTo(JetBrains.Application.Install.InstallationData.InstalledFile)">
            <summary>
            Compares the current object with another object of the same type.
            </summary>
            <returns>
            A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the <paramref name="other"/> parameter.Zero This object is equal to <paramref name="other"/>. Greater than zero This object is greater than <paramref name="other"/>. 
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledFile.Equals(JetBrains.Application.Install.InstallationData.InstalledFile)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <returns>
            true if the current object is equal to the <paramref name="other"/> parameter; otherwise, false.
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledFile.SourceName">
            <summary>
            The local name of the file on the source system. May be a mask that matches more than one file.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledRegistry">
            <summary>
            Wraps all of the Registry-related data in the installation.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistry.#ctor">
            <summary>
            The default ctor, leaves the collections empty.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistry.#ctor(System.Collections.Generic.IEnumerable{JetBrains.Application.Install.InstallationData.InstalledRegistryKey},System.Collections.Generic.IEnumerable{JetBrains.Application.Install.InstallationData.InstalledRegistryValue})">
            <summary>
            Creates a <see cref="T:JetBrains.Application.Install.InstallationData.InstalledRegistry"/> object and fills it with data.
            </summary>
            <param name="keys">Keys.</param>
            <param name="values">Values.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistry.MergeWith(JetBrains.Application.Install.InstallationData.InstalledRegistry)">
            <summary>
            Merges the <paramref name="addon"/> <see cref="T:JetBrains.Application.Install.InstallationData.InstalledRegistry"/> keys and values into the host's, and destroys the former.
            The <see cref="P:JetBrains.Application.Install.InstallationData.InstalledRegistry.Keys"/> or <see cref="P:JetBrains.Application.Install.InstallationData.InstalledRegistry.Values"/> colections may be <c>Null</c> on either parameter, but on return they're guaranteed to be non-<c>Null</c> in this object.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistry.RemoveDuplicates">
            <summary>
            Checks for duplicate keys and values, removes, if any.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistry.ToInstallationData">
            <summary>
            Wraps into the installation data object.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledRegistry.Keys">
            <summary>
            Registry Keys to install and then REMOVE when uninstalling.
            A regsitry value does not require that you write its parent key here. Write a key if you'd like to make sure it will be removed by uninstall.
            For that matter, do not add foreign keys (eg Visual Studio ones) into which we're writing our values.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledRegistry.Values">
            <summary>
            Individual registry values to be installed.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledRegistryKey">
            <summary>
            Registry Keys to install and then REMOVE when uninstalling.
            A regsitry value does not require that you write its parent key here. Write a key if you'd like to make sure it will be removed by uninstall.
            For that matter, do not add foreign keys (eg Visual Studio ones) into which we're writing our values.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledRegistryItemBase">
            <summary>
            Base class for installer Registry keys and values.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryItemBase.#ctor(JetBrains.Application.Install.InstallationData.InstalledRegistryHive,System.String)">
            <summary>
            Creates a <see cref="T:JetBrains.Application.Install.InstallationData.InstalledRegistryValue"/> object.
            </summary>
            <param name="hive">Hive.</param>
            <param name="key">Path to the key under the hive.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryItemBase.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:System.Object"/> class.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryItemBase.System#IComparable{JetBrains#Application#Install#InstallationData#InstalledRegistryItemBase}#CompareTo(JetBrains.Application.Install.InstallationData.InstalledRegistryItemBase)">
            <summary>
            Compares the current object with another object of the same type.
            </summary>
            <returns>
            A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the <paramref name="other"/> parameter.Zero This object is equal to <paramref name="other"/>. Greater than zero This object is greater than <paramref name="other"/>. 
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledRegistryItemBase.Hive">
            <summary>
            The Registry hive.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledRegistryItemBase.Key">
            <summary>
            Path to the key.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryKey.#ctor(JetBrains.Application.Install.InstallationData.InstalledRegistryHive,System.String)">
            <summary>
            Creates a <see cref="T:JetBrains.Application.Install.InstallationData.InstalledRegistryValue"/> object.
            </summary>
            <param name="hive">Hive.</param>
            <param name="key">Path to the key under the hive.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryKey.CreateKey(System.String)">
            <summary>
            Creates a new Registry Key under the current Registry key.
            </summary>
            <param name="relpath">Relative path of the nested Key.</param>
            <returns>The new registry value.</returns>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryKey.CreateValue(System.String,System.Object)">
            <summary>
            Creates a new Registry Value that derives its Hive and Key path from the current Registry key.
            </summary>
            <param name="name">Name of the value.</param>
            <param name="value">Value of the value, must be either a <see cref="T:System.String"/> or an <see cref="T:System.Int32"/>.</param>
            <returns>The new registry value.</returns>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryKey.ToString">
            <summary>
            Returns a <see cref="T:System.String"></see> that represents the current <see cref="T:System.Object"></see>.
            </summary>
            
            <returns>
            A <see cref="T:System.String"></see> that represents the current <see cref="T:System.Object"></see>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryKey.System#IComparable{JetBrains#Application#Install#InstallationData#InstalledRegistryKey}#CompareTo(JetBrains.Application.Install.InstallationData.InstalledRegistryKey)">
            <summary>
            Compares the current object with another object of the same type.
            </summary>
            <returns>
            A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the <paramref name="other"/> parameter.Zero This object is equal to <paramref name="other"/>. Greater than zero This object is greater than <paramref name="other"/>. 
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstalledRegistryHive.Hkcr">
            <summary>
            <c>HKEY_CLASSES_ROOT</c>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstalledRegistryHive.Hklm">
            <summary>
            <c>HKEY_LOCAL_MACHINE</c>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstalledRegistryHive.Hkcu">
            <summary>
            <c>HKEY_CURRENT_USER</c>.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstalledRegistryHive.Hkmu">
            <summary>
            <c>HKEY_LOCAL_MACHINE</c> or <c>HKEY_CURRENT_USER</c>, depending on whether the installation is per-machine or per-user.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledRegistryValue">
            <summary>
            Represents a value to be written to the Registry. On uninstallation, the value will be deleted. It is not necessary to have a key element for each value, unless you want it to be deleted upon uninstallation.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryValue.#ctor(JetBrains.Application.Install.InstallationData.InstalledRegistryHive,System.String,System.String,System.Object)">
            <summary>
            Creates a <see cref="T:JetBrains.Application.Install.InstallationData.InstalledRegistryValue"/> object.
            </summary>
            <param name="hive">Hive.</param>
            <param name="key">Path to the key under the hive.</param>
            <param name="name">Name of the value.</param>
            <param name="value">Value of the value, must be either a <see cref="T:System.String"/> or an <see cref="T:System.Int32"/>.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryValue.ToRegistry">
            <summary>
            Creates a new Registry with just this value.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryValue.ToString">
            <summary>
            Returns a <see cref="T:System.String"></see> that represents the current <see cref="T:System.Object"></see>.
            </summary>
            
            <returns>
            A <see cref="T:System.String"></see> that represents the current <see cref="T:System.Object"></see>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledRegistryValue.System#IComparable{JetBrains#Application#Install#InstallationData#InstalledRegistryValue}#CompareTo(JetBrains.Application.Install.InstallationData.InstalledRegistryValue)">
            <summary>
            Compares the current object with another object of the same type.
            </summary>
            <returns>
            A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the <paramref name="other"/> parameter.Zero This object is equal to <paramref name="other"/>. Greater than zero This object is greater than <paramref name="other"/>. 
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledRegistryValue.IsPermanent">
            <summary>
            Specifies that the value should be written on registration and left intact on unregistration.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledRegistryValue.Name">
            <summary>
            Name of the value under its key, or an empty string for the default value of the key.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledRegistryValue.Type">
            <summary>
            Type of the value, which determines the type of the Windows Registry value to be created. The Value must be formatted accordingly.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledRegistryValue.Value">
            <summary>
            Value for the value.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot.ProductBinariesDir">
            <summary>
            A directory to which the product is built; contains all of the product binaries. Warning: when doing a local install, this is the same as the target InstallDir.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot.ProductHomeDir">
            <summary>
            Home directory of the product, can be used to refer to product library files (see also PlatformHomeDir). Shouldn't be used for the Bin folder, see ProductBinariesDir instead, because it may be redirected on the build.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot.PlatformHomeDir">
            <summary>
            Home directory of the platform, can be used to refer to platform library files.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot.ProductIntermediateDir">
            <summary>
            A directory into which the Product projects build writes its intermediate files.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot.ProductReferencesDir">
            <summary>
            A directory with the Product reference assemblies and files.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot.PlatformReferencesDir">
            <summary>
            A directory with the Platform reference assemblies and files.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledRegistryValueType">
            <summary>
            Lists possible types for the Registry values.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstalledRegistryValueType.Dword">
            <summary>
            An integer DWORD value.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallationData.InstalledRegistryValueType.String">
            <summary>
            A string value.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallationData.InstalledShellLink">
            <summary>
            Installs a shell link (an .lnk file shortcut).
            Its <see cref="P:JetBrains.Application.Install.InstallationData.InstalledFileItemBase.TargetName"/> and parent folder's <see cref="P:JetBrains.Application.Install.InstallationData.InstalledFolder.TargetRoot"/>/<see cref="P:JetBrains.Application.Install.InstallationData.InstalledFolder.TargetDir"/> point to the place where the shell link file will be created (.lnk), while the <see cref="P:JetBrains.Application.Install.InstallationData.InstalledShellLink.ShellLinkTargetRoot"/>/<see cref="P:JetBrains.Application.Install.InstallationData.InstalledShellLink.ShellLinkTargetDir"/>/<see cref="P:JetBrains.Application.Install.InstallationData.InstalledShellLink.ShellLinkTargetName"/> point to the target the shell link will be referencing.
            The source information on the parent <see cref="T:JetBrains.Application.Install.InstallationData.InstalledFolder"/> is not used for the shell link.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledShellLink.#ctor(System.String,JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot,System.String,System.String)">
             <summary>
             Sets the name of the file item on the target filesystem.
             </summary>
            <param name="sShellLinkFileTargetName">
            	Name of the shell link file itself on the target filesystem.
            </param>
            <param name="shellLinkTargetRoot">
            	Root folder on the target file system this Shell Link will be pointing to.
            	Note that this is not the location of the shell link (.lnk) file itself.
            </param>
            <param name="shellLinkTargetDir">
            	Relative path from the
            	<see cref="P:JetBrains.Application.Install.InstallationData.InstalledShellLink.ShellLinkTargetRoot">root folder</see>
            	on the target file system this Shell Link will be pointing to.
            	Note that this is not the location of the shell link (.lnk) file itself.
            </param>
            <param name="shellLinkTargetName">
            	Name of the file on the target file system this Shell Link will be pointing to.
            	Note that this is not the location of the shell link (.lnk) file itself.
            </param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledShellLink.Equals(JetBrains.Application.Install.InstallationData.InstalledShellLink)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <returns>
            true if the current object is equal to the <paramref name="other"/> parameter; otherwise, false.
            </returns>
            <param name="other">An object to compare with this object.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledShellLink.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>.
            </summary>
            <returns>
            true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:System.Object"/>; otherwise, false.
            </returns>
            <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:System.Object"/>. </param><exception cref="T:System.NullReferenceException">The <paramref name="obj"/> parameter is null.</exception><filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Install.InstallationData.InstalledShellLink.GetHashCode">
            <summary>
            Serves as a hash function for a particular type. 
            </summary>
            <returns>
            A hash code for the current <see cref="T:System.Object"/>.
            </returns>
            <filterpriority>2</filterpriority>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledShellLink.ShellLinkTargetDir">
            <summary>
            Relative path from the <see cref="P:JetBrains.Application.Install.InstallationData.InstalledShellLink.ShellLinkTargetRoot">root folder</see> on the target file system this Shell Link will be pointing to.
            Note that this is not the location of the shell link (.lnk) file itself.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledShellLink.ShellLinkTargetName">
            <summary>
            Name of the file on the target file system this Shell Link will be pointing to.
            Note that this is not the location of the shell link (.lnk) file itself.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallationData.InstalledShellLink.ShellLinkTargetRoot">
            <summary>
            Root folder on the target file system this Shell Link will be pointing to.
            Note that this is not the location of the shell link (.lnk) file itself.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Threading.InvocatorEx.ExecuteOrQueueWhenNotGuarded(JetBrains.Threading.Invocator,System.String,JetBrains.DataFlow.Disposables,System.Action)">
            <summary>
            Executes the activity at the moment when there's no <see cref="T:JetBrains.Threading.ReentrancyGuard"/> running.
            Limits the queued action lifetime to that of <paramref name="disposables"/>.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Threading.InvocatorEx.ExecuteOrQueueWhenNotGuarded(JetBrains.Threading.Invocator,System.String,System.Action)">
            <summary>
            Executes the activity at the moment when there's no <see cref="T:JetBrains.Threading.ReentrancyGuard"/> running.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Threading.InvocatorEx.QueueAtShort(JetBrains.Threading.GroupingEventHost,System.String,System.TimeSpan,System.Action)">
            <summary>
            <para>Queues the action to execute once on the <see cref="!:gehost"/>.<see cref="F:JetBrains.Threading.GroupingEventHost.ReentrancyGuard"/>.<see cref="P:JetBrains.Threading.ReentrancyGuard.Dispatcher"/> thread when the timeout elapses.</para>
            <para>Handles intervals smaller than <see cref="F:JetBrains.Threading.GroupingEvent.MaxInterval"/> only.</para>
            <para>Returns a token that cancels the action execution. The token disposal is optional.</para>
            <para>The execution will be either guarded or not, depending on the <see cref="F:JetBrains.Threading.GroupingEventHost.IsGuarded"/> property value.</para>
            </summary>
            <param name="gehost"><c>this</c></param>
            <param name="name">The name for the task.</param>
            <param name="F">The action to execute. Exceptions will be trapped.</param>
            <param name="interval">A non-negative time interval.</param>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainerState.Initial">
            <summary>
            The container has just been created and is not ready for creating the components yet. Call <see cref="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponents(JetBrains.ComponentModel.ComponentDeclarationsCache)"/> to proceed.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainerState.Initializing">
            <summary>
            <see cref="M:JetBrains.ComponentModel.ComponentContainer.InitializeComponents(JetBrains.ComponentModel.ComponentDeclarationsCache)"/> has been called on the container, now the components can be created. This state changes to <see cref="F:JetBrains.ComponentModel.ComponentContainerState.Initialized"/> after the first pack of components is created. Currently, that means all of the product components and maybe some of the plugins, if their assemblies are loaded already.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainerState.Initialized">
            <summary>
            The container is running. The first pack of components has been created.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainerState.Disposing">
            <summary>
            <see cref="M:System.IDisposable.Dispose"/> has been called on the container, and it's currently in the process of tearing down the components.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentContainerState.Disposed">
            <summary>
            The container has destroyed all of the components and is functional no more.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.ComponentDeclarationsCache">
            <summary>
            An untyped base for <see cref="T:JetBrains.ComponentModel.ComponentDeclarationsCache`2"/> to enable use from a non-generic container, as all the functions it needs are pretty nongeneric.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ComponentDeclarationsCache.myComponentDeclarations">
            <summary>
            The known component declarations.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache.AdviseComponentDeclarationsCollectionChange(JetBrains.ComponentModel.ICollectionChangedEventSink{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            Attach the view on collection to the source.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache.UnadviseComponentDeclarationsCollectionChange(JetBrains.ComponentModel.ICollectionChangedEventSink{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            Detach the view on collection from the source.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache.FireCollectionChange_Add(System.Collections.Generic.List{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            Notifies the <see cref="E:System.Collections.Specialized.Dummy.INotifyCollectionChanged.CollectionChanged"/> event listeners of the change.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache.FireCollectionChange_Remove(System.Collections.Generic.List{JetBrains.ComponentModel.ComponentDescriptor})">
            <summary>
            Notifies the <see cref="E:System.Collections.Specialized.Dummy.INotifyCollectionChanged.CollectionChanged"/> event listeners of the change.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
            <filterpriority>2</filterpriority>
        </member>
        <member name="T:JetBrains.ComponentModel.ComponentDeclarationsCache`2">
            <summary>
            Caches component declarations (that is, the list of types that implement components) for a specific <see cref="T:JetBrains.ComponentModel.ComponentContainer"/> class between its instantiations.
            Saves the time on scanning the assemblies for component interface and implementation types when a new instance of <see cref="T:JetBrains.ComponentModel.ComponentContainer"/> is created — eg on each new project.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.AssertValidImplementationType(System.Type)">
            <summary>
            Checks that implementation types are valid.
            Has attribute, implements <see cref="T:JetBrains.ComponentModel.IComponent"/>.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.AssertValidInterfaceType(System.Type)">
            <summary>
            Checks that interface types are valid.
            Has attribute, only one in hierarchy.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.GetBaseClasses(System.Type)">
            <summary>
            Gets all of the base classes of <paramref name="type"/>, not including itself, starting with the closest one.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.GetBaseClassesAndInterfaces(System.Type)">
            <summary>
            Performs a BFS for base classes and interfaces of a type, self not included.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.GetComponentDeclarations(System.Collections.Generic.IEnumerable{System.Type})">
            <summary>
            Sorts out the loaded types into the "interface-implementation" component type pairs.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.GetComponentDeclarations_ChooseFromImpls(System.Collections.Generic.KeyValuePair{System.Type,System.Collections.Generic.ICollection{System.Type}})">
            <summary>
            For each interface-impl mapping, select exactly one interface and implementation.
            On errors, <c>Null</c> is returned (exception is reported inside, no to abort the subsequent components)
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.GetComponentDeclarations_ChooseFromImpls_Disambig(System.Collections.Generic.ICollection{System.Type},System.Type)">
            <summary>
            Makes <paramref name="impls"/>.<see cref="P:System.Collections.Generic.ICollection`1.Count"/> = <c>1</c>, or throws.
            </summary>
            <param name="impls">Component implementations to choose a single one from.</param>
            <param name="typeIntf">Component interface.</param>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.GetComponentDeclarations_MapIntfToImpl(System.Collections.Generic.IEnumerable{System.Type})">
            <summary>
            Maps interface to [multiple] implementations, and to <c>Null</c> special entry when the interface itself is encountered.
            The <see cref="T:System.Object"/> interface type means that the component has no interface.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.IsInProgramConfig(JetBrains.ComponentModel.ComponentAttributeBase)">
            <summary>
            Is included in the Shell's current config?
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDeclarationsCache`2.TryGetInterfaceTypeForImplType(System.Type)">
            <summary>
            Looks up <paramref name="typeImpl"/> and its base classes/interfaces for a component interface (something marked with <see cref="!:TInterfaceAttribute"/>).
            Returns <c>Null</c> if not found, as it's valid to have a component without any interface at all.
            </summary>
            <param name="typeImpl">Implementation type to start at.</param>
        </member>
        <member name="T:JetBrains.ComponentModel.ComponentDescriptor">
            <summary>
            Static descriptor for quick creation of component instances.
            Stored in the <see cref="T:JetBrains.ComponentModel.ComponentDeclarationsCache"/> to avoid doing Reflection on each Solution/Project/AnyOtherComponentContainer creation.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDescriptor.CreateBi(System.Type,System.Type)">
            <summary>
            Creates a descriptor for a component that has both an interface and an implementation.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.ComponentDescriptor.CreateImplOnly(System.Type)">
            <summary>
            Creates a descriptor for a component that has no interface.
            </summary>
        </member>
        <member name="T:JetBrains.Util.IXmlConfigurableComponent">
            <summary>
            The interface which is used to mark components as requiring initialization from configuration file which ships with the product. 
            Used for components which have complex initial configuration which is better to keep in external files rather than in code.
            </summary>
        </member>
        <member name="M:JetBrains.Util.IXmlConfigurableComponent.ConfigureFromXml(System.Xml.XmlElement)">
            <summary>
            Called on the component by the component container before its <see cref="M:JetBrains.ComponentModel.IComponent.Init"/> and <see cref="M:JetBrains.Util.IXmlExternalizable.ReadFromXml(System.Xml.XmlElement)"/> to load the XML Configuration from the resource in the component implementation assembly, the name of the resource specified in the <see cref="T:JetBrains.ComponentModel.XmlConfigurableComponentAttribute"/> on the component implementation.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.ProgramConfigurations">
            <summary>
            It is preferrable that you avoid using <see cref="T:JetBrains.ComponentModel.ProgramConfigurations"/> wherever possible. Place your components in DLLs so that the <see cref="T:JetBrains.Application.AssemblyConfiguration"/> controls the presence of your component by either loading an assembly or omitting it. For example, a Test implementation should be placed in a tests-only assembly.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ProgramConfigurations.NONE">
            <summary>
            It is preferrable that you avoid using <see cref="T:JetBrains.ComponentModel.ProgramConfigurations"/> wherever possible. Place your components in DLLs so that the <see cref="T:JetBrains.Application.AssemblyConfiguration"/> controls the presence of your component by either loading an assembly or omitting it. For example, a Test implementation should be placed in a tests-only assembly.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ProgramConfigurations.STANDALONE">
            <summary>
            It is preferrable that you avoid using <see cref="T:JetBrains.ComponentModel.ProgramConfigurations"/> wherever possible. Place your components in DLLs so that the <see cref="T:JetBrains.Application.AssemblyConfiguration"/> controls the presence of your component by either loading an assembly or omitting it. For example, a Test implementation should be placed in a tests-only assembly.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ProgramConfigurations.TEST">
            <summary>
            It is preferrable that you avoid using <see cref="T:JetBrains.ComponentModel.ProgramConfigurations"/> wherever possible. Place your components in DLLs so that the <see cref="T:JetBrains.Application.AssemblyConfiguration"/> controls the presence of your component by either loading an assembly or omitting it. For example, a Test implementation should be placed in a tests-only assembly.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.ProgramConfigurations.VS_ADDIN">
            <summary>
            It is preferrable that you avoid using <see cref="T:JetBrains.ComponentModel.ProgramConfigurations"/> wherever possible. Place your components in DLLs so that the <see cref="T:JetBrains.Application.AssemblyConfiguration"/> controls the presence of your component by either loading an assembly or omitting it. For example, a Test implementation should be placed in a tests-only assembly.
            </summary>
            
        </member>
        <member name="F:JetBrains.ComponentModel.ProgramConfigurations.ALL">
            <summary>
            It is preferrable that you avoid using <see cref="T:JetBrains.ComponentModel.ProgramConfigurations"/> wherever possible. Place your components in DLLs so that the <see cref="T:JetBrains.Application.AssemblyConfiguration"/> controls the presence of your component by either loading an assembly or omitting it. For example, a Test implementation should be placed in a tests-only assembly.
            </summary>
        </member>
        <member name="T:JetBrains.Application.SortedTypeToInstanceDictionary`1">
            <summary>
            A legacy class for the sorted dictionary. (H): Didn't analyze whether it's better than the standard one.
            </summary>
        </member>
        <member name="M:JetBrains.Application.SortedTypeToInstanceDictionary`1.SetInstance(System.Type,`0)">
            <summary>
            Sets new instance, if <paramref name="o"/> is non-<c>Null</c>.
            Removes an existing instance if <paramref name="o"/> is <c>Null</c>.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.TryGetInstance`2">
            <summary>
            A class that implements the indexed <c>Instance</c> property.
            Could be used for getting parameterized instances of components. For example, an instance of a Solution component is parameterized by solution.
            </summary>
            <typeparam name="TInstance">Type of the instance that will be returned from the property.</typeparam>
            <typeparam name="TParameter">A parameter of the property.</typeparam>
        </member>
        <member name="M:JetBrains.ComponentModel.TryGetInstance`2.#ctor(System.Func{`1,`0})">
            <summary>
            Wraps the <paramref name="funcGetter"/> implementation.
            </summary>
        </member>
        <member name="P:JetBrains.ComponentModel.TryGetInstance`2.Item(`1)">
            <summary>
            Gets the parameterized instance.
            If the instance is not available, <c>Null</c> is returned.
            </summary>
            <param name="parameter">The parameter.</param>
            <returns>The parameterized instance.</returns>
        </member>
        <member name="T:JetBrains.ComponentModel.XmlConfigurableComponentAttribute">
            <summary>
            Allows to mark a component as XML Configurable.
            An XML configuration will be loaded and applied to the component's <see cref="M:JetBrains.Util.IXmlConfigurableComponent.ConfigureFromXml(System.Xml.XmlElement)"/> before reading the component settings (<see cref="M:JetBrains.Util.IXmlExternalizable.ReadFromXml(System.Xml.XmlElement)"/>) and calling its <see cref="M:JetBrains.ComponentModel.IComponent.Init"/>.
            If you call the <see cref="M:JetBrains.Util.IXmlExternalizable.ReadFromXml(System.Xml.XmlElement)"/> from <see cref="M:JetBrains.Util.IXmlConfigurableComponent.ConfigureFromXml(System.Xml.XmlElement)"/>, an XML Configuration becomes the default settings for the component.
            </summary>
        </member>
        <member name="M:JetBrains.ComponentModel.XmlConfigurableComponentAttribute.#ctor(System.String)">
            <param name="configurationResourceName">
            Name of the embedded resource in either the component's assembly or the product's <see cref="!:IApplicationDescriptor.ConfigurationAssembly"/> that contains the XML to be passed into the component's <see cref="M:JetBrains.Util.IXmlConfigurableComponent.ConfigureFromXml(System.Xml.XmlElement)"/> before its <see cref="M:JetBrains.ComponentModel.IComponent.Init"/>.
            </param>
        </member>
        <member name="P:JetBrains.ComponentModel.XmlConfigurableComponentAttribute.ConfigurationResourceName">
            <summary>
            Name of the embedded resource in either the component's assembly or the product's <see cref="!:IApplicationDescriptor.ConfigurationAssembly"/> that contains the XML to be passed into the component's <see cref="M:JetBrains.Util.IXmlConfigurableComponent.ConfigureFromXml(System.Xml.XmlElement)"/> before its <see cref="M:JetBrains.ComponentModel.IComponent.Init"/>.
            </summary>
        </member>
        <member name="T:JetBrains.ComponentModel.XmlExternalizationScope">
            <summary>
            Defines the scopes for the externalizable components.
            The define the sets of isolated components that are serialized to separate storages.
            You may use one of the base values, or introduce your own ones as integers, as the string representations are never used.
            The scopes are normally not persisted, because they define a settings storage on serialization and are defined by the storage on deserialization.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizationScope.Any">
            <summary>
            Don't return from components.
            Means that, when filtering, all the scopes should be allowed.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizationScope.Local">
            <summary>
            Locally-stored settings of a project or a solution.
            They're not intended to be shared in the team or added to the SCC.
            Typically, they're persisted in a “.resharper.user” file.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizationScope.Shared">
            <summary>
            Team-shared settings of a project or a solution.
            They're intended to be added to the SCC.
            Typically, they're persisted in a “.resharper” file.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizationScope.UserSettings">
            <summary>
            User settings of the product.
            </summary>
        </member>
        <member name="F:JetBrains.ComponentModel.XmlExternalizationScope.WorkspaceSettings">
            <summary>
            Workspace settings of the product.
            </summary>
        </member>
        <member name="T:JetBrains.Application.DataFlowEx">
            <summary>
            DataFlow extension methods that require a Shell.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.AssertUiThreadFiring``1(JetBrains.DataFlow.ISignal{``0})">
            <summary>
            Prevents any property modifications if called on any thread but the primary one.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.AssertUiThreadModifications``1(JetBrains.DataFlow.ICollectionEvents{``0})">
            <summary>
            Prevents any collection modifications if called on any thread but the primary one.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.AssertUiThreadModifications``1(JetBrains.DataFlow.IProperty{``0})">
            <summary>
            Prevents any property modifications if called on any thread but the primary one.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.BeginSetGuarded``1(JetBrains.DataFlow.IProperty{``0},``0,System.Object)">
            <summary>
            Assigns a new value to the property under a <see cref="T:JetBrains.Threading.ReentrancyGuard"/> on the primary thread, asynchronously.
            The <see cref="M:JetBrains.Threading.ReentrancyGuard.ExecuteOrQueue(System.String,System.Action)"/> logic is not used, the asynchronous <see cref="M:JetBrains.Threading.ReentrancyGuard.Queue(System.String,System.Action)"/> is always called instead, even if allowed to <see cref="M:JetBrains.Threading.ReentrancyGuard.Execute(System.String,System.Action)"/> in the moment. This guarantees that the property value assignments will always be serialized (eg a later <see cref="M:JetBrains.Threading.ReentrancyGuard.Execute(System.String,System.Action)"/> will not be overwritten when a previous <see cref="M:JetBrains.Threading.ReentrancyGuard.Queue(System.String,System.Action)"/> gets to run).
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.EnsureGuarded``1(JetBrains.DataFlow.Property{``0})">
            <summary>
            Ensures that the property is modified (and the events are fired) in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> only.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.EnsureGuarded``1(JetBrains.DataFlow.Signal{``0})">
            <summary>
            Ensures that the signal is fired in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> only.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.EnsureGuarded(JetBrains.DataFlow.SimpleSignal)">
            <summary>
            Ensures that the signal is fired in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> only.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.EnsureGuarded``1(JetBrains.DataFlow.CollectionEvents{``0})">
            <summary>
            Ensures that the collection is modified (and the events are fired) in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> only.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.EnsurePrimaryThread``1(JetBrains.DataFlow.Property{``0})">
            <summary>
            Ensures that the property is modified (and the events are fired) on the <see cref="P:JetBrains.Application.Shell.PrimaryThread"/> only.
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.FlowIntoGuarded``1(JetBrains.DataFlow.IProperty{``0},JetBrains.DataFlow.IProperty{``0},System.Object,System.Boolean)">
            <summary>
            <para>Establishes a data flow between two properties. The assignment to the target property only happens in the <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see>.</para>
            <para>It is guaranteed that the values are properly serialized, ie a delayed early value will not overwrite a later direct execution.</para>
            <para>Returns a cookie for terminating the flow.</para>
            <para>Not suitable for high-throughput property changes, as it schedulles a new guarded execution for each change. Use <see cref="M:JetBrains.DataFlow.IPropertyEx.FlowInto_Grouped``1(JetBrains.DataFlow.IProperty{``0},JetBrains.DataFlow.IProperty{``0},JetBrains.Threading.GroupingEvent,System.Object)"/> in such cases.</para>
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.FlowIntoGuarded``1(JetBrains.DataFlow.ICollectionEvents{``0},JetBrains.DataFlow.ICollectionEvents{``0},System.Object,System.Boolean,JetBrains.Util.Concurrency.UnguardedCallbackMerger)">
            <summary>
            <para>Establishes a data flow between two collections. The changes to the target collection only happen in the <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see>.</para>
            <para>It is guaranteed that the values are properly serialized, ie a delayed early value will not overwrite a later direct execution.</para>
            <para>Returns a cookie for terminating the flow.</para>
            <para>Not suitable for high-throughput changes, as it schedulles a new guarded execution for each change.</para>
            <para>Uses the given callback merger for guarding the changes.</para>
            </summary>
        </member>
        <member name="M:JetBrains.Application.DataFlowEx.FlowIntoGuarded``1(JetBrains.DataFlow.ICollectionEvents{``0},JetBrains.DataFlow.ICollectionEvents{``0},System.Object,System.Boolean)">
            <summary>
            <para>Establishes a data flow between two collections. The changes to the target collection only happen in the <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see>.</para>
            <para>It is guaranteed that the values are properly serialized, ie a delayed early value will not overwrite a later direct execution.</para>
            <para>Returns a cookie for terminating the flow.</para>
            <para>Not suitable for high-throughput changes, as it schedulles a new guarded execution for each change.</para>
            <para>Uses the <see cref="T:JetBrains.Application.Shell"/>::<see cref="P:JetBrains.Application.Shell.Invocator"/> for guarding the changes.</para>
            </summary>
        </member>
        <member name="T:JetBrains.Application.DataFlowEx.FlowIntoCollectionAction`1">
            <summary>
            Helper for <see cref="M:JetBrains.Application.DataFlowEx.FlowIntoGuarded``1(JetBrains.DataFlow.ICollectionEvents{``0},JetBrains.DataFlow.ICollectionEvents{``0},System.Object,System.Boolean)"/>.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ExceptionReport.ExceptionReporting">
            <summary>
            Central class of the Exception Reporting subsystem.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ExceptionReport.ExceptionReporting.myDispatcher">
            <summary>
            Identifies the owning thread.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ExceptionReport.ExceptionReporting.myIsInInternalMode">
            <summary>
            Whether the product is running in Internal Mode. Knows this earlier than the Shell with its <see cref="P:JetBrains.Application.Shell.IsInInternalMode"/>. Cannot be reset once the session was seen in internal mode.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ExceptionReport.ExceptionReporting.IsRelevantException(System.Exception)">
            <summary>
            Looks for our company/product names in the stack trace.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ExceptionReport.ExceptionReporting.AttachToLogger">
            <summary>
            Starts listening logger events with this exception reporter.
            Previously listening exception reporters are stacked beneath and deactivated until this method is reverted by disposing of its return value.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ExceptionReport.ExceptionReporting.SetInternalMode">
            <summary>
            Tells the Exception Reporting we've entered the Internal mode. Should be called as early as it gets known.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ExceptionReport.ExceptionReporting.TaskExecutor">
            <summary>
            Gets the task executor passed to nested <see cref="M:JetBrains.Application.ExceptionReport.ExceptionReporting.SetStrategy(JetBrains.Application.ExceptionReport.IExceptionReportStrategy)">strategies</see> to handle the exceptions.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ExceptionReport.ExceptionReporting.IsShowingExceptionsToUser">
            <summary>
            Central property for deciding whether to show any exceptions to the user.
            Sometimes we'd like to suppress exception notifications at all (eg for trade show demos), in these cases this flag goes low.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ExceptionReport.ExceptionReporting.ExceptionReporterAttachedToLogger.myReportersStack">
            <summary>
            Free-threaded, lock-free reads, copy-on-write.
            Stacks reporters, the last one is active.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ExceptionReport.ExceptionReporting.ExceptionReporterAttachedToLogger.AddReporter(JetBrains.Application.ExceptionReport.ExceptionReporting)">
            <summary>
            Starts listening logger events with this exception reporter.
            Previously listening exception reporters are stacked beneath and deactivated until this method is reverted by disposing of its return value.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ExceptionReport.ExceptionReporting.ExceptionReporterAttachedToLogger.OnException(System.Object,JetBrains.DataFlow.EventArgs{System.Exception})">
            <summary>
            Exception occured. Dispatch to reporter on top of stack.
            Might be empty, as we would never remove exception listener.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ExecuteOrQueueSingular">
            <summary>
            Wraps <see cref="M:JetBrains.Threading.ReentrancyGuard.ExecuteOrQueue(System.String,System.Action)"/> by executing the same single action. If the execution has been delayed because another execution is in progress (<see cref="M:JetBrains.Threading.ReentrancyGuard.Queue(System.String,System.Action)"/> scenario), does not queue any more executions until the pending one is executed. When the object is disposed of, drops all of the pending executions so that they're never executed after the <see cref="M:System.IDisposable.Dispose"/>.
            Mostly like a <see cref="T:JetBrains.Threading.GroupingEvent"/>, but without any grouping or additional delaying.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ExecuteOrQueueSingular.#ctor(System.String,System.Action)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Object"/> class.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ExecuteOrQueueSingular.#ctor(System.Action,System.Action{System.Action})">
            <summary>
            Initializes a new instance of the <see cref="T:System.Object"/> class.
            Allows to specify the execute-or-queue action manually.
            </summary>
            <param name="FUserAction">The useful user action to be executed when the guarded context is entered.</param>
            <param name="FExecuteOrQueue">The action that causes something to be executed or queued.</param>
        </member>
        <member name="M:JetBrains.Application.ExecuteOrQueueSingular.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
            <filterpriority>2</filterpriority>
        </member>
        <member name="T:JetBrains.ComponentModel.GetInstance`2">
            <summary>
            A class that implements the indexed <c>Instance</c> property.
            Could be used for getting parameterized instances of components. For example, an instance of a Solution component is parameterized by solution.
            </summary>
            <typeparam name="TInstance">Type of the instance that will be returned from the property.</typeparam>
            <typeparam name="TParameter">A parameter of the property.</typeparam>
        </member>
        <member name="M:JetBrains.ComponentModel.GetInstance`2.#ctor(System.Func{`1,`0})">
            <summary>
            Wraps the <paramref name="funcGetter"/> implementation.
            </summary>
        </member>
        <member name="P:JetBrains.ComponentModel.GetInstance`2.Item(`1)">
            <summary>
            Gets the parameterized instance.
            If the instance is not available, an exception is thrown.
            </summary>
            <param name="parameter">The parameter.</param>
            <returns>The parameterized instance.</returns>
        </member>
        <member name="T:JetBrains.ProjectModel.Impl.FileSystemScanner">
            <summary>
            Helper class for scanning a directory for files matching a pattern
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.BindingRedirectionsInstaller.CleanupOldEntries(JetBrains.Application.Install.Installer,System.Xml.XmlDocument)">
            <summary>
            Looks for previous patchings in the config, removes them.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.BindingRedirectionsInstaller.LoadConfigFile(JetBrains.Application.Install.Installer,JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot,System.String)">
            <summary>
            Loads the source config file, or creates a new one.
            Ensures it contains enough top-level elements.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.BindingRedirectionsInstaller.WriteNewEntries(JetBrains.Application.Install.Installer,System.Xml.XmlDocument)">
            <summary>
            Patches the config XML document with redirections.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.BindingRedirectionsInstaller.InstallInstance(JetBrains.Application.Install.Installer,System.Object)">
            <summary>
            Called for each of the attributes of the requested type encountered in the known assemblies.
            </summary>
            <param name="installer">The installer object that provides the installation data.</param>
            <param name="attributeInstance">Instance of the attribute to process.</param>
            <returns>The list of the Registry entries to write, or <c>Null</c> if none.</returns>
        </member>
        <member name="M:JetBrains.Application.Install.BindingRedirectionsInstaller.InstallStatic(JetBrains.Application.Install.Installer)">
            <summary>
            Called once on the object during the registration process.
            </summary>
            <param name="installer">The installer object that provides the installation data.</param>
            <returns>The list of the Registry entries to write, or <c>Null</c> if none.</returns>
        </member>
        <member name="T:JetBrains.Application.Install.BindingRedirectionsInstaller.AssemblyBindingRedirections">
            <summary>
            Produces the default assembly binding redirections for a product assembly.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.BindingRedirectionsInstaller.Attr">
            <summary>
            Attribute names.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.BindingRedirectionsInstaller.Elem">
            <summary>
            Element names.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.BindingRedirectionsInstaller.Nsp">
            <summary>
            Namespace aliases.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.BindingRedirectionsInstaller.Xmlns">
            <summary>
            XML Namespaces.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.FileInstaller">
            <summary>
            Processes the <see cref="T:JetBrains.Application.Install.InstallFileAttribute"/> installations.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.FileInstaller.InstallInstance(JetBrains.Application.Install.Installer,System.Object)">
            <summary>
            Called for each of the attributes of the requested type encountered in the known assemblies.
            </summary>
            <param name="installer">The installer object that provides the installation data.</param>
            <param name="attributeInstance">Instance of the attribute to process.</param>
            <returns>The list of the Registry entries to write, or <c>Null</c> if none.</returns>
        </member>
        <member name="M:JetBrains.Application.Install.FileInstaller.InstallStatic(JetBrains.Application.Install.Installer)">
            <summary>
            Called once on the object during the registration process.
            </summary>
            <param name="installer">The installer object that provides the installation data.</param>
            <returns>The list of the Registry entries to write, or <c>Null</c> if none.</returns>
        </member>
        <member name="T:JetBrains.Application.Install.InstallBindingRedirectionsConfigFileAttribute">
            <summary>
            Updates (compile-time) a config file to include the binding redirections for the current version of the product.
            A new file could also be created.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallBindingRedirectionsConfigFileAttribute.#ctor(System.String)">
            <summary>
            Schedulles creation of a new assembly configuration file with binding redirections.
            </summary>
            <param name="sTargetConfigFileName">Local name of the resulting config file, including all of the extensions. This file will be installed into the <see cref="F:JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot.InstallDir"/> folder.</param>
        </member>
        <member name="M:JetBrains.Application.Install.InstallBindingRedirectionsConfigFileAttribute.#ctor(System.String,JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot,System.String)">
            <summary>
            Schedulles patching of an existing assembly configuration file with binding redirections.
            </summary>
            <param name="sTargetConfigFileName">Local name of the resulting config file, including all of the extensions. This file will be installed into the <see cref="F:JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot.InstallDir"/> folder.</param>
            <param name="sourceroot">Root folder for looking up the original file. This could be <see cref="F:JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot.ProductBinariesDir"/> (same as destination), but this is not a recommended scenario, as the file might be patched multiple times in this case. If <paramref name="sSourceRelativePath"/> is not specified, this value is ignored.</param>
            <param name="sSourceRelativePath">An optional path to the source file, relative to <paramref name="sourceroot"/>. If non-<c>Null</c>, then the binding redirections are added to the contents of that file. If <c>Null</c>, then a new file is created.</param>
        </member>
        <member name="T:JetBrains.Application.Install.InstallerVsVersionAffinity">
            <summary>
            Specifies how the installation action is interested in VisualStudio version.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallerVsVersionAffinity.Neutral">
            <summary>
            The installation data is VS-version-neutral, and the installer will be called only if <see cref="P:JetBrains.Application.Install.Installer.VsVersion"/> is <c>Null</c> (to avoid duplicating the same data coming from runs for different versions).
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallerVsVersionAffinity.Specific">
            <summary>
            The installation data depends on the VS version, and the installer will be called only when <see cref="P:JetBrains.Application.Install.Installer.VsVersion"/> is set to a specific value. Be sure not to generate the same data (target file names, MSI GUIDs) in this mode.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Install.InstallerVsVersionAffinity.CallAlways">
            <summary>
            The installer is always called, regardless of the <see cref="P:JetBrains.Application.Install.Installer.VsVersion"/> value.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.InstallFileAttribute">
            <summary>
            Adds one or more arbitrary files to the installation.
            The files may reside either in Lib or Bin folders.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.InstallFileAttribute.#ctor(System.String,JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot,System.String,JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot,System.String,System.String,System.Boolean)">
            <summary>
            Adds one or more arbitrary files to the installation.
            </summary>
            <param name="targetroot">Base folder on the installation site.</param>
            <param name="sTargetRelativeDir">Relative path from the base folder on the installation site.</param>
            <param name="sourceroot">Base folder on the compilation site.</param>
            <param name="sSourceRelativeDir">Relative path from the base folder on the compilation site.</param>
            <param name="sFilesMask">Mask for picking the files from the folder on the compilation site (source). More than one file is OK. File names will be the same on the installation site (target).</param>
            <param name="recursive">Process all folders recursively</param>
            <param name="id">The unique identifier for this installation entry.</param>
        </member>
        <member name="P:JetBrains.Application.Install.InstallFileAttribute.FilesMask">
            <summary>
            Mask for picking the files from the folder on the compilation site (source). More than one file is OK. File names will be the same on the installation site (target).
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallFileAttribute.Id">
            <summary>
            The unique identifier for this installation entry.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallFileAttribute.IsRecursive">
            <summary>
            Process all subfolders recursively, or not
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallFileAttribute.SourceRelativeDir">
            <summary>
            Relative path from the base folder on the compilation site.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallFileAttribute.SourceRoot">
            <summary>
            Base folder on the compilation site.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallFileAttribute.TargetRelativeDir">
            <summary>
            Relative path from the base folder on the installation site.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Install.InstallFileAttribute.TargetRoot">
            <summary>
            Base folder on the installation site.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Install.LocalInstaller">
            <summary>
            Performs local-system installations, hence “Live”.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.LocalInstaller.Install(JetBrains.Application.Install.InstallationData.InstallationData,JetBrains.Application.Install.RegistrationStage,System.Collections.Generic.IDictionary{System.String,System.String},System.Func{JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot,JetBrains.Util.FileSystemPath},System.Func{JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot,JetBrains.Util.FileSystemPath},System.Action{System.String})">
            <summary>
            Performs the local installation of the given installation data by writing the Registry keys and copying the files.
            </summary>
            <param name="dataxml">The installation data.</param>
            <param name="stage">Stage, either install or uninstall.</param>
            <param name="LogMessage">The logging facility.</param>
            <param name="ResolveSourceDirRoot">Resolves the source directory, for copying the files from.</param>
            <param name="ResolveTargetDirRoot">Resolves the target directory, for copying the files into.</param>
            <param name="macros">The maros to be substituted on install, if needed.</param>
        </member>
        <member name="M:JetBrains.Application.Install.LocalInstaller.GetWindowsRegistryRootKey(JetBrains.Application.Install.InstallationData.InstalledRegistryHive)">
            <summary>
            Gets the proper Windows Registry root key.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.LocalInstaller.InstallFiles(JetBrains.Application.Install.InstallationData.InstallationData,JetBrains.Application.Install.RegistrationStage,System.Action{System.String},System.Func{JetBrains.Application.Install.InstallationData.InstallationSourceDirRoot,JetBrains.Util.FileSystemPath},System.Func{JetBrains.Application.Install.InstallationData.InstallationTargetDirRoot,JetBrains.Util.FileSystemPath})">
            <summary>
            Copies or deletes the files.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.LocalInstaller.InstallRegistry(JetBrains.Application.Install.InstallationData.InstalledRegistry,JetBrains.Application.Install.RegistrationStage,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Executes the registration/unregistration operations on the Registry keys.
            </summary>
            <param name="registry">The Registry to process.</param>
            <param name="registrationStage">Processing type.</param>
            <param name="macros">The macros to substitute when processing the keys.</param>
        </member>
        <member name="M:JetBrains.Application.Install.LocalInstaller.RegisterKey(JetBrains.Application.Install.InstallationData.InstalledRegistryKey,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Writes the key to the Registry.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.LocalInstaller.RegisterValue(JetBrains.Application.Install.InstallationData.InstalledRegistryValue,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Writes the value to the Registry.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.LocalInstaller.UnregisterKey(JetBrains.Application.Install.InstallationData.InstalledRegistryKey,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Deletes the key from the Registry.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Install.LocalInstaller.UnregisterValue(JetBrains.Application.Install.InstallationData.InstalledRegistryValue,System.Collections.Generic.IDictionary{System.String,System.String})">
            <summary>
            Deletes the value from the Registry.
            </summary>
        </member>
        <member name="T:JetBrains.Application.InterruptableReadActivityThe">
            <summary>
            A non-abstract implementation for the <see cref="T:JetBrains.Application.InterruptableReadActivity"/> that allows to specify its behavior externally, without creating an inheritor.
            </summary>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivityThe.#ctor(System.Func{System.Boolean})">
            <summary>
            Constructs the instance.
            </summary>
            <param name="funcIsCancelled">The function that will be checked for cancellation periodically by the <see cref="P:JetBrains.Application.InterruptableReadActivityThe.FuncRun"/> function.</param>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivityThe.Finish">
            <summary>
            Override this method with activity that will happen in primary thread after worker thread finishesþ
            </summary>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivityThe.OnInterrupt">
            <summary>
            This method is invoked in primary thread if work is interrupted. 
            </summary>
            If this method is invoked, <cref>Finish</cref> will NOT be called.
            
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivityThe.Start">
            <summary>
            Override this method with activity that should happen in primary thread before background thread
            </summary>
        </member>
        <member name="M:JetBrains.Application.InterruptableReadActivityThe.Work">
            <summary>
            Override this method with activity that happens in background thread.
            </summary>
            This method should periodically check return value of <c>d</c> and either return or 
            throw <c>ProcessCancelledException</c>
        </member>
        <member name="P:JetBrains.Application.InterruptableReadActivityThe.FuncCancelled">
            <summary>
            Gets or sets the function that is executed in case the action is aborted.
            </summary>
        </member>
        <member name="P:JetBrains.Application.InterruptableReadActivityThe.FuncCompleted">
            <summary>
            Gets or sets the function that gets executed on the UI thread in case the action completes successfully.
            </summary>
        </member>
        <member name="P:JetBrains.Application.InterruptableReadActivityThe.FuncCompletedOrCancelled">
            <summary>
            Gets or sets the function that is executed on the UI thread when the action finishes execution with either result.
            </summary>
        </member>
        <member name="P:JetBrains.Application.InterruptableReadActivityThe.FuncRun">
            <summary>
            Gets or sets the worker function that executes on the secondary thread. Its parameter is similar to <c>funcIsCancelled</c> in the <c>.ctor</c>, but includes additional conditions from the implementation. Returns the success flag.
            </summary>
        </member>
        <member name="P:JetBrains.Application.InterruptableReadActivityThe.FuncStart">
            <summary>
            Gets or sets the function that is executed on the primary thread when the action starts.
            </summary>
        </member>
        <member name="P:JetBrains.Application.InterruptableReadActivityThe.Name">
            <summary>
            Gets or sets the name for the operation, and for the worker thread of the operation.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Progress.IProgressIndicatorModel">
            <summary>
            A data-only presentation of the <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> state.
            While <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> is producer-oriented, the <see cref="T:JetBrains.Application.Progress.IProgressIndicatorModel"/> is intended for consumers.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.IProgressIndicatorModel.Fraction">
            <summary>
            <para>The current position of the progress, in the [0..1] range, inclusive.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsCanceled">
            <summary>
            <para>Whether the activity which the progress is visualizing has been canceled externally. This could be user's clicking on the "Cancel" button of the UI the progress is bound to.</para>
            <para>You should check this property periodically and cut off the remaining activity if <c>True</c>. You MIGHT throw <see cref="T:JetBrains.Application.Progress.ProcessCancelledException"/> for that, still it's recommended not to use exceptions for flow control, but check <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsCanceled"/> on all of the levels of nesting.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsRunning">
            <summary>
            Whether the producer thinks it's currently running. <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Fraction"/> SHOULD be at <c>1</c> when done running.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.IProgressIndicatorModel.Name">
            <summary>
            <para>A title of the whole activity which the progress is visualizing.</para>
            <para>You SHOULD set <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Name"/> once per <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsRunning"/> run, and <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.StepName"/> once per <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Fraction"/> step, if applicable.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.IProgressIndicatorModel.StepName">
            <summary>
            <para>A title of the current item being processed by the activity which the progress is visualizing.</para>
            <para>You SHOULD set <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Name"/> once per <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsRunning"/> run, and <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.StepName"/> once per <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Fraction"/> step, if applicable.</para>
            </summary>
        </member>
        <member name="T:JetBrains.Application.Progress.ProgressIndicator">
            <summary>
            <para>A self-container progress indicator implementations.</para>
            <para><see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> should be given to producers, and the consumers make use of this instance thru its <see cref="T:JetBrains.Application.Progress.IProgressIndicatorModel"/>.</para>
            <para>By default, no special threading model is implied on the members. They could be modified on any thread and fire changes on any thread.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.ProgressIndicator.myAdvanceFactor">
            <summary>
            The factor to be applied to the <see cref="!:Advance"/> units to make them <see cref="P:JetBrains.Application.Progress.ProgressIndicator.Fraction"/> units.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.ProgressIndicator.myEpsilon">
            <summary>
            Epsilon for the <see cref="T:System.Double"/> parameters of the progress.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.ProgressIndicator.myFraction">
            <summary>
            Model item.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.ProgressIndicator.myIsCanceled">
            <summary>
            Model item.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.ProgressIndicator.myIsRunning">
            <summary>
            Model item.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.ProgressIndicator.myName">
            <summary>
            Model item.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.ProgressIndicator.myStepName">
            <summary>
            Model item.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicator.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicator.JetBrains#Application#Progress#IProgressIndicator#Advance(System.Double)">
            <summary>
            <para>Advances the progress within the range, as defined by the <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> call.</para>
            <para><see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> MUST be called first.</para>
            </summary>
            <param name="units">A whole or fractional number of units from the [0..totalWorkUnits] range, as defined by the <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/> method.</param>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicator.JetBrains#Application#Progress#IProgressIndicator#Start(System.Int32)">
            <summary>
            <para>Starts the progress to run through the [0..range] range. You MUST call <see cref="T:JetBrains.Application.Progress.SubProgressIndicator"/> at the end. Use <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> to move the progress across the range.</para>
            <para>Generally, you SHOULD set the <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/> to identify the current execution span, once per <see cref="P:JetBrains.Application.Progress.IProgressIndicator.CurrentItemText"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>, and change the <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> when doing <see cref="P:JetBrains.Application.Progress.IProgressIndicator.CurrentItemText"/> to comment on the progress.</para>
            <para>If you would like to delegate a sub-range to a nested routine, you SHOULD create a <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/> and pass the resulting <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> to the routine, so that it ran a whole range from its point of view, which would then map to a sub-range of this progress indicator.</para>
            </summary>
            <param name="range">The inclusive upper limit of the progress range.</param>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicator.JetBrains#Application#Progress#IProgressIndicator#Stop">
            <summary>
            <para>Completes the progress run. You MUST call <see cref="T:JetBrains.Application.Progress.SubProgressIndicator"/> if you previously called <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/>.</para>
            <para>Generally, you SHOULD always call the <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/>-<see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> pair on the given indicator, even if gotten no items to process, so that a <see cref="T:JetBrains.Application.Progress.IProgressIndicator"/> could use up the parent range consistently.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.ReadonlyToken">
            <summary>
            An optional readonly token used by this object for accessing the <see cref="T:JetBrains.Application.Progress.IProgressIndicatorModel"/> part.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.JetBrains#Application#Progress#IProgressIndicator#CurrentItemText">
            <summary>
            <para>A title of the current item being processed by the activity which the progress is visualizing.</para>
            <para>You SHOULD set <see cref="P:JetBrains.Application.Progress.IProgressIndicator.TaskName"/> once per <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> run, and <see cref="P:JetBrains.Application.Progress.IProgressIndicator.CurrentItemText"/> once per <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/>, if applicable.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.JetBrains#Application#Progress#IProgressIndicator#IsCanceled">
            <summary>
            <para>Whether the activity which the progress is visualizing has been canceled externally. This could be user's clicking on the "Cancel" button of the UI the progress is bound to.</para>
            <para>You should check this property periodically and cut off the remaining activity if <c>True</c>. You MIGHT throw <see cref="T:JetBrains.Application.Progress.ProcessCancelledException"/> for that, still it's recommended not to use exceptions for flow control, but check <see cref="P:JetBrains.Application.Progress.IProgressIndicator.IsCanceled"/> on all of the levels of nesting.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.JetBrains#Application#Progress#IProgressIndicator#TaskName">
            <summary>
            <para>A title of the whole activity which the progress is visualizing.</para>
            <para>You SHOULD set <see cref="P:JetBrains.Application.Progress.IProgressIndicator.TaskName"/> once per <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Start(System.Int32)"/>-<see cref="M:JetBrains.Application.Progress.IProgressIndicator.Stop"/> run, and <see cref="P:JetBrains.Application.Progress.IProgressIndicator.CurrentItemText"/> once per <see cref="M:JetBrains.Application.Progress.IProgressIndicator.Advance(System.Double)"/>, if applicable.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.Fraction">
            <summary>
            <para>The current position of the progress, in the [0..1] range, inclusive.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.IsCanceled">
            <summary>
            <para>Whether the activity which the progress is visualizing has been canceled externally. This could be user's clicking on the "Cancel" button of the UI the progress is bound to.</para>
            <para>You should check this property periodically and cut off the remaining activity if <c>True</c>. You MIGHT throw <see cref="T:JetBrains.Application.Progress.ProcessCancelledException"/> for that, still it's recommended not to use exceptions for flow control, but check <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsCanceled"/> on all of the levels of nesting.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.IsRunning">
            <summary>
            Whether the producer thinks it's currently running. <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Fraction"/> SHOULD be at <c>1</c> when done running.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.Name">
            <summary>
            <para>A title of the whole activity which the progress is visualizing.</para>
            <para>You SHOULD set <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Name"/> once per <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsRunning"/> run, and <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.StepName"/> once per <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Fraction"/> step, if applicable.</para>
            </summary>
        </member>
        <member name="P:JetBrains.Application.Progress.ProgressIndicator.StepName">
            <summary>
            <para>A title of the current item being processed by the activity which the progress is visualizing.</para>
            <para>You SHOULD set <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Name"/> once per <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsRunning"/> run, and <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.StepName"/> once per <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.Fraction"/> step, if applicable.</para>
            </summary>
        </member>
        <member name="T:JetBrains.Application.Progress.ProgressIndicatorMarshalled">
            <summary>
            As the original <see cref="T:JetBrains.Application.Progress.ProgressIndicator"/> is free-threaded, wraps it into a new <see cref="T:JetBrains.Application.Progress.IProgressIndicatorModel"/> that fires its changes on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher"/> thread only.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorMarshalled.Create(JetBrains.Application.Progress.IProgressIndicatorModel)">
            <summary>
            As the original <see cref="T:JetBrains.Application.Progress.ProgressIndicator"/> is free-threaded, wraps it into a new <see cref="T:JetBrains.Application.Progress.IProgressIndicatorModel"/> that fires its changes on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher"/> thread only.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.ProgressIndicatorMarshalled.CreateWithoutSafeThreadCheck(JetBrains.Application.Progress.IProgressIndicatorModel)">
            <summary>
            As the original <see cref="T:JetBrains.Application.Progress.ProgressIndicator"/> is free-threaded, wraps it into a new <see cref="T:JetBrains.Application.Progress.IProgressIndicatorModel"/> that fires its changes on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher"/> thread only.
            Note: you should call the <see cref="M:JetBrains.Application.Progress.ProgressIndicatorMarshalled.Create(JetBrains.Application.Progress.IProgressIndicatorModel)"/> version whenever possible.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Progress.SimpleTaskExecutor">
            <summary>
            A task executor that just calls the task method.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Progress.SimpleTaskExecutor.PushProgressCanceledInterruptableCookie(JetBrains.Application.Progress.IProgressIndicator)">
            <summary>
            Throws the <see cref="T:JetBrains.Application.Progress.ProcessCancelledException"/> on <see cref="P:JetBrains.Application.Progress.IProgressIndicatorModel.IsCanceled"/>.
            This is the simple non-UI implementation. UI-related implementations should use a similar method from the <c>UITaskExecutorRun</c>.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Progress.TaskCancelable">
            <summary>
            Whether an <see cref="T:JetBrains.Application.Progress.ITaskExecutor"/> task could be user-canceled.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.TaskCancelable.No">
            <summary>
            <para>The task does not quite support canceling, so there's no use in displaying the "Cancel" button to the user.</para>
            <para>Note that the task might still be canceled and your <see cref="T:JetBrains.Application.Progress.ITaskExecutor"/> run might still return <c>False</c> in some cases, like throwing <see cref="T:JetBrains.Application.Progress.ProcessCancelledException"/> from the task implementation.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Progress.TaskCancelable.Yes">
            <summary>
            The task supports canceling, looks for <see cref="P:JetBrains.Application.Progress.IProgressIndicator.IsCanceled"/>, and user should be presented with the "Cancel" option in the progress UI.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ReadLockCookie">
            <summary>
            Read lock object. This object is used as a stakeholder for read lock.
            </summary>
            <example>
            Use the following pattern to acquire read lock and safely release it.
            <code>
            using (ReadLockCookie.Create())
            {
              // Your code goes here
            }
            </code>
            </example>
            <seealso>Shell.AcquireReadLock</seealso>
        </member>
        <member name="M:JetBrains.Application.ReadLockCookie.Execute(System.Action)">
            <summary>
            Executes the <see cref="!:action"/> under a read lock.
            </summary>
            <seealso cref="M:JetBrains.Application.ReadLockCookie.Create"/>
        </member>
        <member name="T:JetBrains.Application.ShellComponent">
            <summary>
            Allows to bind to the Shell runtime, either thru the <see cref="F:JetBrains.Application.ShellComponent.Shell"/> property or thru the <see cref="F:JetBrains.Application.ShellComponent.Disposables"/> container.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellComponent.#ctor(JetBrains.Application.Shell)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Object"/> class.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellComponent.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:JetBrains.Application.ShellComponent.Init">
            <summary>
            <para>Initializes the component. Called by the component container after the component is created.</para>
            <para><see cref="M:System.IDisposable.Dispose"/> is the pairing method that's guaranteed to be called by the component container to tear down your component.</para>
            <para>You must not access other components before your <see cref="M:JetBrains.ComponentModel.IComponent.Init"/> method is called.</para>
            <para>All of the components that you access from <see cref="M:JetBrains.ComponentModel.IComponent.Init"/> are guaranteed to exist when your <see cref="M:System.IDisposable.Dispose"/> is called. Any other component might be missing by that time, and trying to get it will throw an exception.</para>
            </summary>
        </member>
        <member name="T:JetBrains.Application.ShellComponents">
            <summary>
            The anchor class for various extension methods that expose the app-global components via <see cref="P:JetBrains.Application.Shell.Components"/>. Should not have any class members. All of the members should be added as extension methods, even in this assembly (otherwise, some of them might get less discoverable).
            </summary>
            <remarks>Notes to implementors: use the <see cref="P:JetBrains.Application.ShellComponents.Shell"/> prop to get the component instead of its own statics, as this is more consistent against the known instance of the component container.</remarks>
        </member>
        <member name="P:JetBrains.Application.ShellComponents.Shell">
            <summary>
            Gets the <see cref="P:JetBrains.Application.ShellComponents.Shell"/> instance whose components this object is serving.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ShellComponentsEx">
            <summary>
            <see cref="T:JetBrains.Application.ShellComponents"/> in this assembly.
            </summary>
            <remarks>Excluded: <see cref="T:JetBrains.Application.OneTimeInitializationManager"/>, <see cref="T:JetBrains.Application.OleUndoManagerFactory"/>.</remarks>
        </member>
        <member name="M:JetBrains.Application.ShellComponentsEx.Get``1(JetBrains.Application.ShellComponents)">
            <summary>
            Gets the component whose interface type is <typeparamref name="TInterface"/>.
            Throws if there is no such component. Use <see cref="M:JetBrains.Application.ShellComponentsEx.Has``1(JetBrains.Application.ShellComponents)"/> to check.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellComponentsEx.Has``1(JetBrains.Application.ShellComponents)">
            <summary>
            Gets whether a component whose interface type is <typeparamref name="TInterface"/> is available.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ShellLocks">
            <summary>
            Groups the locking-related methods in the Shell.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellLocks.Debug_LongWait_Threshold">
            <summary>
            The threshold, in milliseconds, for telling long waits. Any wait above this is "long", and is reported.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellLocks.myDispatcher">
            <summary>
            Identifies the primary thread (for the Write Lock affinity).
            Attaches to the thread it's created on.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellLocks.myRWLock">
            <summary>
            Implementation for the RW locks.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellLocks.myThreadWithGrantedWriteAccess">
            <summary>
            Normally, only the primary thread can take Write Lock at any time, and this is <c>Null</c>.
            If non-<c>Null</c>, then this right is temporarily granted to another thread.
            </summary>
        </member>
        <member name="F:JetBrains.Application.ShellLocks.AfterWriteLockReleased">
            <summary>
            Fires after the Read Lock is released in any thread. Fires on that same thread.
            </summary>
            <remarks>Plain events cannot be used, for they're not thread safe.</remarks>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.AcquireReadLock">
             <summary>
             Fetches read lock - the lock which is used to control read-access to ReSharper data (such as PSI, documents, etc.) and 
             is obtained by threads that perform read-operations.
             </summary>    
             <remarks>
             Read lock cannot be acquired when the write lock is acquired by another thread and execution will be blocked until the write lock is released. 
             You do not need to acquire read lock in the UI thread (since write operations cannot be performed in any thread different from the UI thread).
             
             Use <see cref="M:JetBrains.Application.ShellLocks.ReleaseReadLock"/> method to release read lock.
            
             <b>NOTE:</b> the best way to hold read lock for a block of code is to use <see cref="T:JetBrains.Application.ReadLockCookie"></see>
             </remarks>    
             <seealso cref="T:JetBrains.Application.ReadLockCookie"/>
             <seealso cref="M:JetBrains.Application.ShellLocks.ReleaseReadLock"/>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.AcquireWriteLock">
            <summary>
            Fetches write lock - the lock which is used to control write-access to ReSharper data (such as PSI, documents, etc.) and 
            is obtained by threads that perform write-operations.
            </summary>
            <remarks>
            Write lock cannot be acquired when the read lock is acquired by another thread and execution will be blocked until the read lock is released. 
            Acquiring of the write lock is allowed only in the UI thread (and so you cannot perform any write operations from non-UI thread).
            Note that you do not have to obtain the write lock explicitly in most of cases. All low-level write methods (such as PSI or document modifications) 
            obtain write lock automatically. You may need to obtain write lock if your subsystem (similar to PSI or documents) has its own data to be modified in write operations only.
            
            Use <see cref="M:JetBrains.Application.ShellLocks.ReleaseWriteLock"/> method to release write lock.
            
            <b>NOTE:</b> the best way to hold write lock for a block of code is to use <see cref="T:JetBrains.Application.WriteLockCookie"></see>
            </remarks>    
            <seealso cref="T:JetBrains.Application.WriteLockCookie"/>
            <seealso cref="M:JetBrains.Application.ShellLocks.ReleaseWriteLock"/>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.AssertReadAccessAllowed">
            <summary>
            Checks whether read lock is acquired and issues an internal assertion if it's not true.
            Useful method to be inserted in data access methods to ensure correct use of locks.
            </summary>
            <seealso cref="P:JetBrains.Application.ShellLocks.IsReadAccessAllowed"/>    
        </member>
        <member name="M:JetBrains.Application.ShellLocks.AssertWriteAccessAllowed">
            <summary>
            Checks whether write lock is acquired and issues an internal assertion if it's not true.
            Useful method to be inserted in data modification methods to ensure correct use of locks.
            </summary>
            <seealso cref="P:JetBrains.Application.ShellLocks.IsWriteAccessAllowed"/>    
        </member>
        <member name="M:JetBrains.Application.ShellLocks.GrantWriteAccess(System.Threading.Thread)">
            <summary>
            Grants write access rights to the specified secondary thread. This function can only be called from the 
            primary UI thread. The typical situation in which it can be useful is when a time-consuming 
            write operation needs to be performed. It is supposed that during this operation the UI thread
            is blocked (by e.g. a modal window). Only one thread can be granted write access at time.
            </summary>
            <seealso cref="M:JetBrains.Application.ShellLocks.RevokeWriteAccess(System.Threading.Thread)"/>
            <param name="thread">Thread to grant write access to</param>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.ReleaseReadLock">
             <summary>
             Releases read lock.
            
             For more information about read lock see <see cref="M:JetBrains.Application.ShellLocks.AcquireReadLock"/>.
             </summary>
             <seealso cref="M:JetBrains.Application.ShellLocks.AcquireReadLock"/>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.ReleaseWriteLock">
             <summary>
             Releases write lock.
            
             For more information about write lock see <see cref="M:JetBrains.Application.ShellLocks.AcquireWriteLock"/>.
             </summary>
             <seealso cref="M:JetBrains.Application.ShellLocks.AcquireWriteLock"/>    
        </member>
        <member name="M:JetBrains.Application.ShellLocks.RevokeWriteAccess(System.Threading.Thread)">
            <summary>
            Revokes write access from the thread that has been granted write access.
            </summary>
            <seealso cref="M:JetBrains.Application.ShellLocks.GrantWriteAccess(System.Threading.Thread)"/>
            <param name="thread">Thread to revoke write access from</param>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.Debug_LongWait_AfterWaitForReadLock">
            <summary>
            Called after we have completed waiting for the write lock.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.Debug_LongWait_AfterWaitForWriteLock">
            <summary>
            Called after we have completed waiting for the write lock.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.Debug_LongWait_BeforeReleaseReadLock">
            <summary>
            Read lock is about to be released, check if we kept someone waiting for a write lock.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.Debug_LongWait_BeforeReleaseWriteLock">
            <summary>
            Read lock is about to be released, check if we kept someone waiting for a write lock.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.Debug_LongWait_BeforeWaitForReadLock">
            <summary>
            Called before we start waiting for the lock, to enter the long-wait-tracking-mode.
            </summary>
        </member>
        <member name="M:JetBrains.Application.ShellLocks.Debug_LongWait_BeforeWaitForWriteLock">
            <summary>
            Called before we start waiting for the lock, to enter the long-wait-tracking-mode.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellLocks.Everlocked">
            <summary>
            Gets whether the locks are always considered to be held.
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellLocks.IsReadAccessAllowed">
            <summary>
            True if read access is allowed in the current thread.
            </summary>
            <seealso cref="M:JetBrains.Application.ShellLocks.AcquireReadLock"/>    
            <seealso cref="M:JetBrains.Application.ShellLocks.AssertReadAccessAllowed"/>    
        </member>
        <member name="P:JetBrains.Application.ShellLocks.IsReadLockHeld">
            <summary>
            Indicates that the current thread owns the read lock
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellLocks.IsWriteAccessAllowed">
            <summary>
            True if write access is allowed in the current thread. 
            </summary>
            <seealso cref="M:JetBrains.Application.ShellLocks.AcquireWriteLock"/>    
            <seealso cref="M:JetBrains.Application.ShellLocks.AssertWriteAccessAllowed"/>    
        </member>
        <member name="P:JetBrains.Application.ShellLocks.IsWriteLockHeld">
            <summary>
            Indicates that the current thread owns the write lock
            </summary>
        </member>
        <member name="P:JetBrains.Application.ShellLocks.IsWriteLockHeldByAnyThread">
            <summary>
            Gets whether the write lock is held by any thread (this includes the transferred write lock case).
            </summary>
        </member>
        <member name="E:JetBrains.Application.ShellLocks.AfterReadLockReleased">
            <summary>
            Fires after the Read Lock is released in any thread. Fires on that same thread.
            </summary>
        </member>
        <member name="E:JetBrains.Application.ShellLocks.BeforeAcquiringReadLock">
            <summary>
            Event which is raised before read lock is acquired. 
            </summary>
            <seealso>AcquireReadLock</seealso>
        </member>
        <member name="E:JetBrains.Application.ShellLocks.BeforeAcquiringWriteLock">
            <summary>
            Event which is raised before write lock is acquired. 
            This event can be used by background operations which need to stop/pause to allow write operation to execute.
            </summary>
            <seealso>AcquireWriteLock</seealso>
        </member>
        <member name="T:JetBrains.Threading.Invocator">
            <summary>
            <para>A combined invocator that incapsulates both <see cref="P:JetBrains.Threading.Invocator.ReentrancyGuard"/> and <see cref="T:JetBrains.Threading.ReentrancyAlarm"/>.</para>
            <para>When disposed of, shuts down the <see cref="T:JetBrains.Threading.ReentrancyAlarm"/> and cancels all of its timed actions. It's OK for individual alarm consumers to dispose of them as well.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Threading.Invocator.IsApplicationActive">
            <summary>
            Gets or sets whether the application is currently active.
            Used with <see cref="T:JetBrains.Threading.ReentrancyGuardTimer"/>s in <see cref="M:JetBrains.Threading.Invocator.QueueRecurring(System.String,System.TimeSpan,System.Action)"/> to suspend execution when inactive.
            </summary>
        </member>
        <member name="M:JetBrains.Threading.Invocator.AllowNestedExecutionAndReleaseLocks(System.String,System.Action)">
            <summary>
            When executed under a reentrancy guard, lifts the guard and releases all of the locks, ie constructs a clean state.
            Must be executed on the primaty thread.
            </summary>
            <param name="name">Name for the <see cref="P:JetBrains.Threading.Invocator.ReentrancyGuard"/> lifting.</param>
            <param name="action">The action to be executed in the clean state.</param>
        </member>
        <member name="M:JetBrains.Threading.Invocator.ExecuteOrQueue(System.String,System.Action)">
            <summary>
            <para>Executes an action on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see>.</para>
            <para>If called on a foreign thread, executes the action asynchronously, like <see cref="M:JetBrains.Threading.Invocator.Queue(System.String,System.Action)"/>.</para>
            <para>If called on the guarded thread, checks for reentrancy. If there are no guarded executions on the stack yet, executes the action immediately and synchronously, like <see cref="M:JetBrains.Threading.ReentrancyGuard.Execute(System.String,System.Action)"/>. Otherwise, postpones the action for asynchronous execution, like <see cref="M:JetBrains.Threading.Invocator.Queue(System.String,System.Action)"/> does.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
            <returns><c>True</c> if executed immediately, <c>False</c> if queued (<see cref="M:JetBrains.Threading.ReentrancyGuard.TryExecute(System.String,System.Action)"/>-compatible behavior).</returns>
        </member>
        <member name="M:JetBrains.Threading.Invocator.ExecuteOrQueueReadLock(System.String,System.Action)">
            <summary>
            <para>Executes an action on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see>.</para>
            <para>If called on a foreign thread, executes the action asynchronously, like <see cref="M:JetBrains.Threading.Invocator.Queue(System.String,System.Action)"/>.</para>
            <para>If called on the guarded thread, checks for reentrancy. If there are no guarded executions on the stack yet, executes the action immediately and synchronously. Otherwise, postpones the action for asynchronous execution, like <see cref="M:JetBrains.Threading.Invocator.Queue(System.String,System.Action)"/> does.</para>
            <para>Takes a read lock.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
            <returns><c>True</c> if executed immediately, <c>False</c> if queued (<see cref="M:JetBrains.Threading.ReentrancyGuard.TryExecute(System.String,System.Action)"/>-compatible behavior).</returns>
        </member>
        <member name="M:JetBrains.Threading.Invocator.LogAssertGuarded">
            <summary>
            <para>Checks that the activity is executed on the proper thread and is being guarded from reentrancy.</para>
            <para>Does not break execution, just logs the failure — the common case of the failure is adding new guard-checks, in which case the features could go on functioning “as before” without breaking execution, but logging the failure.</para>
            </summary>
        </member>
        <member name="M:JetBrains.Threading.Invocator.PushQueue(System.String,System.Action)">
            <summary>
            <para>Queues the action to execute asynchronously on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see>, as soon as possible. Allows to reclaim the queueing and cancel the action from executing.</para>
            <para>The reentrancy between guarded actions is prevented.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
            <returns>You may optionally dispose of the return value to prevent the action from executing later.</returns>
        </member>
        <member name="M:JetBrains.Threading.Invocator.Queue(System.String,System.Action)">
            <summary>
            <para>Queues the action to execute asynchronously on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see>, as soon as possible. Free-threaded.</para>
            <para>The reentrancy between guarded actions is prevented.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
        </member>
        <member name="M:JetBrains.Threading.Invocator.QueueAtAuto(System.String,System.TimeSpan,System.Action)">
            <summary>
            <para>Queues the action to execute once on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> when the timeout elapses.</para>
            <para>Automatically selects between <see cref="M:JetBrains.Threading.Invocator.QueueAtShort(System.String,System.TimeSpan,System.Action)"/> and <see cref="M:JetBrains.Threading.Invocator.QueueAtLong(System.String,System.TimeSpan,System.Action)"/>.</para>
            <para>Returns a token that cancels the action execution. The token disposal is optional.</para>
            <para>A <see cref="T:JetBrains.Threading.ReentrancyGuard"/> is preventing reentrancy between the actions.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
            <param name="interval">A non-negative time interval.</param>
        </member>
        <member name="M:JetBrains.Threading.Invocator.QueueAtLong(System.String,System.TimeSpan,System.Action)">
            <summary>
            <para>Queues the action to execute once on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> when the timeout elapses.</para>
            <para>Handles intervals above <see cref="F:JetBrains.Threading.GroupingEvent.MaxInterval"/>, refuses to serve small intervals.</para>
            <para>Returns a token that cancels the action execution. The token disposal is optional.</para>
            <para>A <see cref="T:JetBrains.Threading.ReentrancyGuard"/> is preventing reentrancy between the actions.</para>
            <para>This is a low-throughput method and should not be used for delaying, cancelling and delaying again the events. For that purpose, use <see cref="M:JetBrains.Threading.Invocator.QueueGrouping(System.String,System.TimeSpan,System.Action)"/> instead.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
            <param name="interval">A non-negative time interval.</param>
        </member>
        <member name="M:JetBrains.Threading.Invocator.QueueAtShort(System.String,System.TimeSpan,System.Action)">
            <summary>
            <para>Queues the action to execute once on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> when the timeout elapses.</para>
            <para>Handles intervals smaller than <see cref="F:JetBrains.Threading.GroupingEvent.MaxInterval"/> only.</para>
            <para>Returns a token that cancels the action execution. The token disposal is optional.</para>
            <para>A <see cref="T:JetBrains.Threading.ReentrancyGuard"/> is preventing reentrancy between the actions.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
            <param name="interval">A non-negative time interval.</param>
        </member>
        <member name="M:JetBrains.Threading.Invocator.QueueBlinking(System.String,System.TimeSpan,System.Int32,System.Action,System.Action)">
            <summary>
            <para>Queues two actions to execute asynchronously by turn on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> at recurring intervals.</para>
            <para>Returns a token that cancels the recurring action execution. This token must be eventually disposed of.</para>
            <para>When the application gets inactive, the action is executed once, and then suspends until the application gets activated again.</para>
            <para>A <see cref="T:JetBrains.Threading.ReentrancyGuard"/> is preventing reentrancy between the actions.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="firstAction">The first action to execute. Exceptions will be trapped.</param>
            <param name="secondAction">The second action to execute. Exceptions will be trapped.</param>
            <param name="roundInterval">A non-negative time interval for each blink round.</param>
            <param name="rounds">The number of rounds.</param>
        </member>
        <member name="M:JetBrains.Threading.Invocator.QueueGrouping(System.String,System.TimeSpan,System.Action)">
            <summary>
            <para>Creates and registers an event that groups multiple incoming signals within a time span and issues only one outgoing signal for them.</para>
            <para>This allows to accomodate for external events firing at a high rate and execute the handler only when their activity suspends.</para>
            <para>The object is thread-safe: the incoming event may fire on any thread, the outgoing activity always happens on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see>.</para>
            <para>This function is free-threaded.</para>
            </summary>
            <param name="name">A name to identify the event.</param>
            <param name="interval">The grouping interval. The incoming events are grouped until there's a pause of the <paramref name="interval"/> length, and after that the outgoing event is fired. The interval must be not above <see cref="F:JetBrains.Threading.GroupingEvent.MaxInterval"/>.</param>
            <param name="action">Optional. The action for the outgoing event. This action will be executed on the primaty thread and under the <see cref="T:JetBrains.Threading.ReentrancyGuard"/>. If you omit this action, advise the <see cref="P:JetBrains.Threading.GroupingEvent.Outgoing"/> event on the return value.</param>
            <returns>The event on which the incoming events can be fired. Must be disposed of.</returns>
        </member>
        <member name="M:JetBrains.Threading.Invocator.QueueReadLock(System.String,System.Action)">
            <summary>
            <para>Queues the action to execute asynchronously on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see>, as soon as possible. Free-threaded.</para>
            <para>The reentrancy between guarded actions is prevented.</para>
            <para>Takes a read lock.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
        </member>
        <member name="M:JetBrains.Threading.Invocator.QueueRecurring(System.String,System.TimeSpan,System.Action)">
            <summary>
            <para>Queues the action to execute asynchronously on the <see cref="P:JetBrains.Application.Shell.PrimaryDispatcher">primary thread</see> in a <see cref="T:JetBrains.Threading.ReentrancyGuard">guarded context</see> at recurring intervals. Can be used on the primary thread only.</para>
            <para>Returns a token that cancels the recurring action execution. This token must be eventually disposed of.</para>
            <para>When the application gets inactive, the action is executed once, and then suspends until the application gets activated again.</para>
            <para>A <see cref="T:JetBrains.Threading.ReentrancyGuard"/> is preventing reentrancy between the actions.</para>
            </summary>
            <param name="name">The name for the task.</param>
            <param name="action">The action to execute. Exceptions will be trapped.</param>
            <param name="interval">A non-negative time interval.</param>
        </member>
        <member name="M:JetBrains.Threading.Invocator.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
            <filterpriority>2</filterpriority>
        </member>
        <member name="P:JetBrains.Threading.Invocator.Alarm">
            <summary>
            Provides access to the underlying <see cref="T:JetBrains.Threading.ReentrancyAlarm"/>, <see cref="P:JetBrains.Threading.Invocator.ReentrancyGuard"/>, <see cref="T:JetBrains.Threading.JetDispatcher"/>, and <see cref="T:System.Threading.Thread"/>.
            </summary>
        </member>
        <member name="P:JetBrains.Threading.Invocator.GroupingEventsGuarded">
            <summary>
            A host that creates grouping events whose outgoing actions are protected with <see cref="P:JetBrains.Threading.Invocator.ReentrancyGuard"/>.
            </summary>
        </member>
        <member name="P:JetBrains.Threading.Invocator.GroupingEventsUnguarded">
            <summary>
            A host that creates grouping events whose outgoing actions are not reentrancy-constrained.
            Could be used in pure UI, without the side-effect of freezing while <see cref="P:JetBrains.Threading.Invocator.ReentrancyGuard"/> is held.
            </summary>
        </member>
        <member name="P:JetBrains.Threading.Invocator.ReentrancyGuard">
            <summary>
            Gets the reentrancy guard that implements the non-timed actions of this Invocator.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Threading.MultiCoreFiberStrategy.Disable">
            <summary>
            Do not use multi-core fibers
            </summary>
        </member>
        <member name="F:JetBrains.Application.Threading.MultiCoreFiberStrategy.Normal">
            <summary>
            Regular fiber usage. Number of fibers equals to processur number
            </summary>
        </member>
        <member name="F:JetBrains.Application.Threading.MultiCoreFiberStrategy.Agressive">
            <summary>
            Agressive fiber usage. Number od fibers is twice processor count
            </summary>
        </member>
        <member name="T:JetBrains.Application.Threading.MultiCoreFibersPool">
            <summary>
            Utility class to parallelize jobs on multiple processor cores
            </summary>
        </member>
        <member name="T:JetBrains.Application.WriteLockCookie">
            <summary>
            Write lock object. This object is used as a stakeholder for write lock.
            </summary>
            <example>
            Use the following pattern to acquire write lock and safely release it.
            <code>
            using (WriteLockCookie.Create())
            {
              // Your code goes here
            }
            </code>
            </example>
            <seealso>Shell.AcquireWriteLock</seealso>
        </member>
        <member name="M:JetBrains.Application.WriteLockCookie.Execute(System.Action)">
            <summary>
            Executes the <see cref="!:action"/> under a write lock.
            </summary>
            <seealso cref="M:JetBrains.Application.WriteLockCookie.Create"/>
        </member>
        <member name="T:JetBrains.Application.Test.BaseTestPlatform">
            <summary>
            A base test that is set up for creating the Platform Test Shell.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Test.TestDataFlowEx">
            <summary>
            Tests the shell-specific extensions to DF entities.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Test.TestQueueingBase">
            <summary>
            Tests for the common part of the <see cref="T:JetBrains.Threading.GroupingEvent"/> and <see cref="T:JetBrains.Threading.ReentrancyAlarm.TimedAction"/> behavior.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestQueueingBase.Run(System.Action)">
            <summary>
            Runs the test impl in presetup environment.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestQueueingBase.Queue(System.TimeSpan,System.Action)">
            <summary>
            Implementation-specific queueing — the queuer to test.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestReentrancyGuard.T000_Immediate">
            <summary>
            Non-deferred execution, allowed and not.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestReentrancyGuard.T010_Properties">
            <summary>
            Status properties under and outside execution.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestReentrancyGuard.T020_Queue">
            <summary>
            Async queueing.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestReentrancyGuard.T030_LiftGuard">
            <summary>
            Check lifting the exec constraint.
            Take guard, lift guard inside it, then take inside it and so on.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestReentrancyGuard.T040_PumpQueue">
            <summary>
            Queues actions and executes them on-demand.
            </summary>
        </member>
        <member name="T:JetBrains.Application.Test.TestsApplicationDescriptor">
            <summary>
            An application descriptor that starts the Tests Shell.
            </summary>
        </member>
        <member name="F:JetBrains.Application.Test.TestsApplicationDescriptor.PlatformTestsAssembliesConfiguration">
            <summary>
            The assemblies configuration for running tests on this shell.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestsApplicationDescriptor.#ctor(System.Reflection.Assembly,System.String)">
            <summary>
            Constructs the application descriptor, specifying the environment details.
            </summary>
            <param name="asmConfig">The assembly that contains the <paramref name="sAllAssembliesResourceName"/> AllAssembliesXml data.</param>
            <param name="sAllAssembliesResourceName">The resource with the AllAssembliesXml assemblies list data.</param>
        </member>
        <member name="M:JetBrains.Application.Test.TestsApplicationDescriptor.StartShell(System.Reflection.Assembly)">
            <param name="asmWithTests">Determines whether the Shell could be reused for the current assembly.</param>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.AllAssembliesResourceAssembly">
            <summary>
            Gets the assembly that contains the <see cref="P:JetBrains.Application.ApplicationDescriptor.AllAssembliesXml"/> data.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.AllAssembliesResourceName">
            <summary>
            Gets the name of the resource in <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesResourceAssembly"/> that contains the serialized <see cref="P:JetBrains.Application.IApplicationDescriptor.AllAssembliesXml"/> data.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.BuyURL">
            <summary>
            Gets the URL that takes to the “Buy Product” page.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.DoCheckLicenseReuseOverNetwork">
            <summary>
            Determines whether the product should check for multiple instances running simultaneousely over the network.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.EvaluationURL">
            <summary>
            Gets the URL that takes to the page that provides an eval license.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.LicenseSupport">
            <summary>
            Gets the licensing implementation.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.ProductBirthDate">
            <summary>
            The birth date of the product. Used for the lower copyright year and so on.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.ProductFullName">
            <summary>
            Gets the product full name, which is typically the <see cref="P:JetBrains.Application.IApplicationDescriptor.ProductName"/> plus the short version number.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.ProductIcon">
            <summary>
            Gets the product icon.
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.ProductName">
            <summary>
            Gets the bare product name in the shortest form (no company, no version).
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.ProductURL">
            <summary>
            Gets the URL that takes to the Product page.
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestsApplicationDescriptor.TestShellStarter.StartShell">
            <summary>
            <para>Starts the application shell based on this application descriptor.</para>
            <para>The <see cref="P:JetBrains.Application.Shell.HasInstance"/> is expected to be <c>True</c> after this method returns. It's an error to call this method if already <see cref="P:JetBrains.Application.Shell.HasInstance"/> is <c>True</c>.</para>
            <para>See notes on <see cref="T:JetBrains.Application.IApplicationDescriptor"/> for info on how Shells and Application Descriptors work together, and how this method should be implemented.</para>
            </summary>
        </member>
        <member name="M:JetBrains.Application.Test.TestsApplicationDescriptor.TestShellStarter.GetAssemblyConfigurations">
            <summary>
            Calculates the current assembly config (note that it could be unique per shell run, while our object lives thru the process runtime).
            </summary>
        </member>
        <member name="P:JetBrains.Application.Test.TestsApplicationDescriptor.TestShellStarter.CommandLine">
            <summary>
            Gets the application command line.
            </summary>
        </member>
        <member name="T:TestShellAssemblyScope">
            <summary>
            Must be in the global namespace.
            This class tears down the Test Shell at the end of the assembly tests execution.
            Plant a class in each assembly with tests, inherited from this one.
            </summary>
        </member>
        <member name="T:JetBrains.Application.ExceptionReport.StoringExceptionReportService">
            <summary>
            Stores all of the reported exceptions (with either reporting method) without showing them to the user.
            </summary>
        </member>
        <member name="M:JetBrains.Application.OneTimeInitializationChecker.IsInitializationNeeded(System.String,System.Boolean,System.Action{System.Exception})">
            <summary>
            Checks if the one-time-init is needed.
            Optionally, marks it as done in the Registry (write-touches Current User hive only).
            </summary>
            <param name="identity">Identity of user</param>
            <param name="bMarkAsDone">Whether to mark one-time-init as performed for this config.</param>
            <param name="failed">Action to execute if check failed, or null</param>
            <returns>Whether one-time-init was required.</returns>
        </member>
        <member name="M:JetBrains.Application.OneTimeInitializationChecker.GetActualIdentity(JetBrains.Application.Shell)">
            <summary>
            If the per-machine one-time-init value is not available, this value is used instead.
            </summary>
            <param name="shellInstance"></param>
        </member>
        <member name="T:JetBrains.Application.Defines">
             <summary>Pre-compile-time defined constants that emulate the C++ #define that has a value.</summary>
            <remarks>The set of #defines and their default values are given in an MSBuild file. The defauls could be overridden on the build server.</remarks>
        </member>
        <member name="F:JetBrains.Application.Defines.CompanyName">
             <summary>
              <para>
                <c>#define CompanyName JetBrains</c>
              </para>
              <para>Short company name.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.IsModeAssert">
             <summary>
              <para>
                <c>#define IsModeAssert False</c>
              </para>
              <para>Whether debug asserts should be active and throw runtime exceptions.</para>
              <para>Default is ON. OFF for production builds.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.IsModeStatistics">
             <summary>
              <para>
                <c>#define IsModeStatistics False</c>
              </para>
              <para>Whether statistics should be collected by the Statistics class.</para>
              <para>Default is OFF.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.IsMsiIncludePdb">
             <summary>
              <para>
                <c>#define IsMsiIncludePdb False</c>
              </para>
              <para>Whether PDBs for product binaries should be packed into the Setup.</para>
              <para>If True, it is an error if a PDB is missing.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.IsMsiIncludeXmlDoc">
             <summary>
              <para>
                <c>#define IsMsiIncludeXmlDoc True</c>
              </para>
              <para>Whether XmlDocs for product binaries should be packed into the Setup.</para>
              <para>If True, it is an error if an XmlDoc file is missing.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.IsMsiProductBinariesStrongName">
             <summary>
              <para>
                <c>#define IsMsiProductBinariesStrongName True</c>
              </para>
              <para>Whether product binaries packed into MSI must have strong names. If True, Setup build will fail unless assemblies have strong names.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.IsProductionBuild">
             <summary>
              <para>
                <c>#define IsProductionBuild True</c>
              </para>
              <para>Defines whether this is the Production Build — that is, production license should be used instead of the EAP license, and any optional checks should be deactivated.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.IsReSharper">
             <summary>
              <para>
                <c>#define IsReSharper True</c>
              </para>
              <para>Demo Define.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.ModeAssertName">
             <summary>
              <para>
                <c>#define ModeAssertName JET_MODE_ASSERT</c>
              </para>
              <para>Name of the IsModeAssert-induced conditional compilation symbol.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.ModeStatisticsName">
             <summary>
              <para>
                <c>#define ModeStatisticsName JET_MODE_STATISTICS</c>
              </para>
              <para>Name of the IsModeAssert-induced conditional compilation symbol.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.PragmaOnce_Platform_Defines_Targets">
             <summary>
              <para>
                <c>#define PragmaOnce_Platform_Defines_Targets True</c>
              </para>
              <para>Pragma Once.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.PragmaOnce_Product_Defines_Targets">
             <summary>
              <para>
                <c>#define PragmaOnce_Product_Defines_Targets True</c>
              </para>
              <para>Pragma Once.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.ProductName">
             <summary>
              <para>
                <c>#define ProductName ReSharper</c>
              </para>
              <para>Name of the current product. If there're multiple products built on these sources, their least common generic name.</para>
              <para>You MUST NOT use this define where an Application Descriptor is available (this includes any time when Shell is running). This is ONLY for out-of-shell and build-time uses.</para>
            </summary>
        </member>
        <member name="T:JetBrains.Application.Defines.Const">
             <summary>Literal versions of the properties.</summary>
            <remarks>Use these const fields only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</remarks>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.CompanyName">
             <summary>
              <para>
                <c>#define CompanyName JetBrains</c>
              </para>
              <para>Short company name.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.IsModeAssert">
             <summary>
              <para>
                <c>#define IsModeAssert False</c>
              </para>
              <para>Whether debug asserts should be active and throw runtime exceptions.</para>
              <para>Default is ON. OFF for production builds.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.IsModeStatistics">
             <summary>
              <para>
                <c>#define IsModeStatistics False</c>
              </para>
              <para>Whether statistics should be collected by the Statistics class.</para>
              <para>Default is OFF.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.IsMsiIncludePdb">
             <summary>
              <para>
                <c>#define IsMsiIncludePdb False</c>
              </para>
              <para>Whether PDBs for product binaries should be packed into the Setup.</para>
              <para>If True, it is an error if a PDB is missing.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.IsMsiIncludeXmlDoc">
             <summary>
              <para>
                <c>#define IsMsiIncludeXmlDoc True</c>
              </para>
              <para>Whether XmlDocs for product binaries should be packed into the Setup.</para>
              <para>If True, it is an error if an XmlDoc file is missing.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.IsMsiProductBinariesStrongName">
             <summary>
              <para>
                <c>#define IsMsiProductBinariesStrongName True</c>
              </para>
              <para>Whether product binaries packed into MSI must have strong names. If True, Setup build will fail unless assemblies have strong names.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.IsProductionBuild">
             <summary>
              <para>
                <c>#define IsProductionBuild True</c>
              </para>
              <para>Defines whether this is the Production Build — that is, production license should be used instead of the EAP license, and any optional checks should be deactivated.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.IsReSharper">
             <summary>
              <para>
                <c>#define IsReSharper True</c>
              </para>
              <para>Demo Define.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.ModeAssertName">
             <summary>
              <para>
                <c>#define ModeAssertName JET_MODE_ASSERT</c>
              </para>
              <para>Name of the IsModeAssert-induced conditional compilation symbol.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.ModeStatisticsName">
             <summary>
              <para>
                <c>#define ModeStatisticsName JET_MODE_STATISTICS</c>
              </para>
              <para>Name of the IsModeAssert-induced conditional compilation symbol.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.PragmaOnce_Platform_Defines_Targets">
             <summary>
              <para>
                <c>#define PragmaOnce_Platform_Defines_Targets True</c>
              </para>
              <para>Pragma Once.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.PragmaOnce_Product_Defines_Targets">
             <summary>
              <para>
                <c>#define PragmaOnce_Product_Defines_Targets True</c>
              </para>
              <para>Pragma Once.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
        <member name="F:JetBrains.Application.Defines.Const.ProductName">
             <summary>
              <para>
                <c>#define ProductName ReSharper</c>
              </para>
              <para>Name of the current product. If there're multiple products built on these sources, their least common generic name.</para>
              <para>You MUST NOT use this define where an Application Descriptor is available (this includes any time when Shell is running). This is ONLY for out-of-shell and build-time uses.</para>
              <para>Use this const field only where use of a constant is mandatory. Otherwise use the static readonly field in the outer class, which stands better in the compiled assembly.</para>
            </summary>
        </member>
    </members>
</doc>
